summaryrefslogtreecommitdiff
path: root/test/SemaCXX/virtuals.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/SemaCXX/virtuals.cpp')
-rw-r--r--test/SemaCXX/virtuals.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/test/SemaCXX/virtuals.cpp b/test/SemaCXX/virtuals.cpp
index 6b8231d4e1e2b..f8180745bd3ba 100644
--- a/test/SemaCXX/virtuals.cpp
+++ b/test/SemaCXX/virtuals.cpp
@@ -51,3 +51,13 @@ namespace pr8264 {
virtual virtual void func(); // expected-warning {{duplicate 'virtual' declaration specifier}}
};
}
+
+namespace VirtualFriend {
+ // DR (filed but no number yet): reject meaningless pure-specifier on a friend declaration.
+ struct A { virtual int f(); };
+ struct B { friend int A::f() = 0; }; // expected-error {{friend declaration cannot have a pure-specifier}}
+ struct C {
+ virtual int f();
+ friend int C::f() = 0; // expected-error {{friend declaration cannot have a pure-specifier}}
+ };
+}