aboutsummaryrefslogtreecommitdiff
path: root/test/SemaCXX/inherit.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2008-10-22 17:49:05 +0000
committerDouglas Gregor <dgregor@apple.com>2008-10-22 17:49:05 +0000
commitf8268ae3196002bbab6adb830302e79b0f368f13 (patch)
tree755160cb56f57dd7d7dafccc13858533037e619b /test/SemaCXX/inherit.cpp
parented2cb285522513d33b001900acf211cc5ee2175b (diff)
Add representation of base classes in the AST, and verify that we
don't have duplicated direct base classes. Seriliazation of base class specifiers is not yet implemented. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@57991 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaCXX/inherit.cpp')
-rw-r--r--test/SemaCXX/inherit.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/test/SemaCXX/inherit.cpp b/test/SemaCXX/inherit.cpp
index 82d8db38cf..8ccecddaf6 100644
--- a/test/SemaCXX/inherit.cpp
+++ b/test/SemaCXX/inherit.cpp
@@ -23,3 +23,10 @@ union U1 : public A { }; // expected-error{{unions cannot have base classes}}
union U2 {};
class G : public U2 { }; // expected-error{{unions cannot be base classes}}
+
+typedef G G_copy;
+typedef G G_copy_2;
+typedef G_copy G_copy_3;
+
+class H : G_copy, A, G_copy_2, // expected-error{{base class 'G_copy' specified more than once as a direct base class}}
+ public G_copy_3 { }; // expected-error{{base class 'G_copy' specified more than once as a direct base class}}