aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/external/c-testsuite/tests/single-exec/00084.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/external/c-testsuite/tests/single-exec/00084.c')
-rw-r--r--test/external/c-testsuite/tests/single-exec/00084.c54
1 files changed, 54 insertions, 0 deletions
diff --git a/test/external/c-testsuite/tests/single-exec/00084.c b/test/external/c-testsuite/tests/single-exec/00084.c
new file mode 100644
index 0000000..cfd0fac
--- /dev/null
+++ b/test/external/c-testsuite/tests/single-exec/00084.c
@@ -0,0 +1,54 @@
+#define ARGS(...) __VA_ARGS__
+
+int
+none()
+{
+ return 0;
+}
+
+int
+one(int a)
+{
+ if (a != 1)
+ return 1;
+
+ return 0;
+}
+
+int
+two(int a, int b)
+{
+ if (a != 1)
+ return 1;
+ if (b != 2)
+ return 1;
+
+ return 0;
+}
+
+int
+three(int a, int b, int c)
+{
+ if (a != 1)
+ return 1;
+ if (b != 2)
+ return 1;
+ if (c != 3)
+ return 1;
+
+ return 0;
+}
+
+int
+main()
+{
+ if (none(ARGS()))
+ return 1;
+ if (one(ARGS(1)))
+ return 2;
+ if (two(ARGS(1, 2)))
+ return 3;
+ if (three(ARGS(1, 2, 3)))
+ return 4;
+ return 0;
+}