[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / SemaCXX / base-class-ambiguity-check.cpp
bloba7f5ee1d771063cdec37c5044dd6df22b0ac8e0d
1 // RUN: %clang_cc1 -fsyntax-only -verify %s
3 template <typename T> class Foo {
4 struct Base : T {};
6 // Test that this code no longer causes a crash in Sema. rdar://23291875
7 struct Derived : Base, T {};
8 };
11 template <typename T> struct Foo2 {
12 struct Base1; // expected-note{{member is declared here}}
13 struct Base2; // expected-note{{member is declared here}}
14 // Should not crash on an incomplete-type and dependent base specifier.
15 struct Derived : Base1, Base2 {}; // expected-error {{implicit instantiation of undefined member 'Foo2<int>::Base1'}} \
16 expected-error {{implicit instantiation of undefined member 'Foo2<int>::Base2'}}
19 Foo2<int>::Derived a; // expected-note{{in instantiation of member class}}