summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/PR6618.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2010-03-21 22:56:43 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2010-03-21 22:56:43 +0000
commit568586ff227d06d6670da11e503506eab6ed3b23 (patch)
treeaae9ebd6fe2f629910bb97a6d82701f175b42b6f /clang/test/SemaCXX/PR6618.cpp
parentb41ca8f2aeb085306fc8c1027fa621ce0a398fdc (diff)
downloadbcm5719-llvm-568586ff227d06d6670da11e503506eab6ed3b23.tar.gz
bcm5719-llvm-568586ff227d06d6670da11e503506eab6ed3b23.zip
Fix PR6618.
If a struct has an invalid field, mark it as invalid. Also avoid producing errors about incomplete types that are invalid. llvm-svn: 99150
Diffstat (limited to 'clang/test/SemaCXX/PR6618.cpp')
-rw-r--r--clang/test/SemaCXX/PR6618.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/PR6618.cpp b/clang/test/SemaCXX/PR6618.cpp
new file mode 100644
index 00000000000..10d4dc87b0a
--- /dev/null
+++ b/clang/test/SemaCXX/PR6618.cpp
@@ -0,0 +1,13 @@
+// RUN: %clang_cc1 -fsyntax-only -verify %s
+class bar; // expected-note {{forward declaration of 'bar'}}
+struct zed {
+ bar g; // expected-error {{field has incomplete type}}
+};
+class baz {
+ zed h;
+};
+void f() {
+ enum {
+ e = sizeof(baz)
+ };
+}
OpenPOWER on IntegriCloud