diff options
Diffstat (limited to 'tests/ifdef_ifndef.sh')
| -rw-r--r-- | tests/ifdef_ifndef.sh | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/tests/ifdef_ifndef.sh b/tests/ifdef_ifndef.sh new file mode 100644 index 0000000..683a1dc --- /dev/null +++ b/tests/ifdef_ifndef.sh @@ -0,0 +1,95 @@ +cat <<'EOF' > expected +int printf (); + + +int main () { + + printf ( __ducc__ is defined.\n); + + printf ( A is defined.\n); + + printf ( B is undefined.\n); + + + return 0; +} +EOF + +test_cpp <<'EOF' +int printf(); + +#define A 123 + +int main() { + +#ifdef __ducc__ + printf("__ducc__ is defined.\n"); +#else + printf("__ducc__ is undefined.\n"); +#endif + +#ifdef A + printf("A is defined.\n"); +#else + printf("A is undefined.\n"); +#endif + +#ifdef B + printf("B is defined.\n"); +#else + printf("B is undefined.\n"); +#endif + +#define B 456 + + return 0; +} +EOF + +cat <<'EOF' > expected +int printf (); + + +int main () { + + printf ( __ducc__ is defined.\n); + + printf ( A is defined.\n); + + printf ( B is undefined.\n); + + + return 0; +} +EOF + +test_cpp <<'EOF' +int printf(); + +#define A 123 + +int main() { + +#ifndef __ducc__ + printf("__ducc__ is undefined.\n"); +#else + printf("__ducc__ is defined.\n"); +#endif + +#ifndef A + printf("A is undefined.\n"); +#else + printf("A is defined.\n"); +#endif + +#ifndef B + printf("B is undefined.\n"); +#else + printf("B is defined.\n"); +#endif + +#define B 456 + + return 0; +} +EOF |
