diff options
author | Douglas Gregor <dgregor@apple.com> | 2008-10-22 17:49:05 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2008-10-22 17:49:05 +0000 |
commit | f8268ae3196002bbab6adb830302e79b0f368f13 (patch) | |
tree | 755160cb56f57dd7d7dafccc13858533037e619b /test/SemaCXX/inherit.cpp | |
parent | ed2cb285522513d33b001900acf211cc5ee2175b (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.cpp | 7 |
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}}
|