diff options
Diffstat (limited to 'clang/test/SemaCXX/abstract.cpp')
| -rw-r--r-- | clang/test/SemaCXX/abstract.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/clang/test/SemaCXX/abstract.cpp b/clang/test/SemaCXX/abstract.cpp index 08baacc49d6..9c8e2dc9774 100644 --- a/clang/test/SemaCXX/abstract.cpp +++ b/clang/test/SemaCXX/abstract.cpp @@ -51,4 +51,16 @@ void t5(void (*)(C)); // expected-error {{parameter type 'C' is an abstract clas typedef void (*Func)(C); // expected-error {{parameter type 'C' is an abstract class}} void t6(Func); - +class F { + F a() { } // expected-error {{return type 'F' is an abstract class}} + + class D { + void f(F c); // expected-error {{parameter type 'F' is an abstract class}} + }; + + union U { + void u(F c); // expected-error {{parameter type 'F' is an abstract class}} + }; + + virtual void f() = 0; // expected-note {{pure virtual function 'f'}} +}; |

