summaryrefslogtreecommitdiffstats
path: root/clang/test/FixIt/fixit-cxx0x.cpp
diff options
context:
space:
mode:
authorEhsan Akhgari <ehsan.akhgari@gmail.com>2015-03-25 00:53:33 +0000
committerEhsan Akhgari <ehsan.akhgari@gmail.com>2015-03-25 00:53:33 +0000
commitc07d1e23fb25688f6282f114deb9fc6f9e6985c9 (patch)
tree69cf4518db39c2f2b6120a7b38395e0d3d18ba9b /clang/test/FixIt/fixit-cxx0x.cpp
parent93ed5cf5e62e828248ec80ba3a032df1d2159fdc (diff)
downloadbcm5719-llvm-c07d1e23fb25688f6282f114deb9fc6f9e6985c9.tar.gz
bcm5719-llvm-c07d1e23fb25688f6282f114deb9fc6f9e6985c9.zip
Diagnose ref-qualifiers occuring after virt-specifier-seq and generate fixit hints
Summary: Follow-up to the fix of PR22075. Reviewers: rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D7012 llvm-svn: 233161
Diffstat (limited to 'clang/test/FixIt/fixit-cxx0x.cpp')
-rw-r--r--clang/test/FixIt/fixit-cxx0x.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/clang/test/FixIt/fixit-cxx0x.cpp b/clang/test/FixIt/fixit-cxx0x.cpp
index 6e096e5e78e..5aebcb3defa 100644
--- a/clang/test/FixIt/fixit-cxx0x.cpp
+++ b/clang/test/FixIt/fixit-cxx0x.cpp
@@ -159,7 +159,7 @@ namespace MisplacedParameterPack {
void redundantEllipsisInNonTypeTemplateParameter();
}
-namespace MisplacedDeclSpecAfterVirtSpec {
+namespace MisplacedDeclAndRefSpecAfterVirtSpec {
struct B {
virtual void f();
virtual void f() volatile const;
@@ -168,4 +168,12 @@ namespace MisplacedDeclSpecAfterVirtSpec {
virtual void f() override;
virtual void f() override final const volatile; // expected-error {{'const' qualifier may not appear after the virtual specifier 'final'}} expected-error {{'volatile' qualifier may not appear after the virtual specifier 'final'}}
};
+ struct B2 {
+ virtual void f() &;
+ virtual void f() volatile const &&;
+ };
+ struct D2 : B2 {
+ virtual void f() override &; // expected-error {{'&' qualifier may not appear after the virtual specifier 'override'}}
+ virtual void f() override final const volatile &&; // expected-error {{'const' qualifier may not appear after the virtual specifier 'final'}} expected-error {{'volatile' qualifier may not appear after the virtual specifier 'final'}} expected-error {{'&&' qualifier may not appear after the virtual specifier 'final'}}
+ };
}
OpenPOWER on IntegriCloud