aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/CBackend/2003-05-13-VarArgFunction.ll8
-rw-r--r--test/CodeGen/CBackend/2003-05-13-VarArgFunction.ll8
2 files changed, 16 insertions, 0 deletions
diff --git a/test/CBackend/2003-05-13-VarArgFunction.ll b/test/CBackend/2003-05-13-VarArgFunction.ll
new file mode 100644
index 0000000000..1b2c2b846e
--- /dev/null
+++ b/test/CBackend/2003-05-13-VarArgFunction.ll
@@ -0,0 +1,8 @@
+; This testcase breaks the C backend, because gcc doesn't like (...) functions
+; with no arguments at all.
+
+void %test(long %Ptr) {
+ %P = cast long %Ptr to void(...) *
+ call void(...)* %P(long %Ptr)
+ ret void
+}
diff --git a/test/CodeGen/CBackend/2003-05-13-VarArgFunction.ll b/test/CodeGen/CBackend/2003-05-13-VarArgFunction.ll
new file mode 100644
index 0000000000..1b2c2b846e
--- /dev/null
+++ b/test/CodeGen/CBackend/2003-05-13-VarArgFunction.ll
@@ -0,0 +1,8 @@
+; This testcase breaks the C backend, because gcc doesn't like (...) functions
+; with no arguments at all.
+
+void %test(long %Ptr) {
+ %P = cast long %Ptr to void(...) *
+ call void(...)* %P(long %Ptr)
+ ret void
+}