aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/ifdef_ifndef.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ifdef_ifndef.sh')
-rw-r--r--tests/ifdef_ifndef.sh95
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