aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2009-03-22 22:03:03 +0000
committerEli Friedman <eli.friedman@gmail.com>2009-03-22 22:03:03 +0000
commit21bab842fb9e25fa8be50ae065090fef514fefed (patch)
treeffb75863c767acfb50d5f9d6ef30baec09bfdc61
parente7c6f7aa7e8ee1f0acacc314dcf59d5dadff1524 (diff)
Add testcase for incomplete call/return types for calls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67486 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/Sema/incomplete-call.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/Sema/incomplete-call.c b/test/Sema/incomplete-call.c
new file mode 100644
index 0000000000..c8b104a47d
--- /dev/null
+++ b/test/Sema/incomplete-call.c
@@ -0,0 +1,13 @@
+// RUN: clang -fsyntax-only -verify %s
+
+struct foo; // expected-note 3 {{forward declaration of 'struct foo'}}
+
+struct foo a();
+void b(struct foo);
+void c();
+
+void func() {
+ a(); // expected-error{{return type of called function ('struct foo') is incomplete}}
+ b(*(struct foo*)0); // expected-error{{argument type 'struct foo' is incomplete}}
+ c(*(struct foo*)0); // expected-error{{argument type 'struct foo' is incomplete}}
+}