summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDecl.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2012-09-13 20:16:20 +0000
committerDouglas Gregor <dgregor@apple.com>2012-09-13 20:16:20 +0000
commit43bc036e8ae37c5940857f3dcf50bc9441e7c4d0 (patch)
tree74c1faf59f34e2590b7780bba6726321ed90e951 /clang/lib/Sema/SemaDecl.cpp
parent460fc46e0fd34893231ef1ab6d4d9f02f339e443 (diff)
downloadbcm5719-llvm-43bc036e8ae37c5940857f3dcf50bc9441e7c4d0.tar.gz
bcm5719-llvm-43bc036e8ae37c5940857f3dcf50bc9441e7c4d0.zip
Promote the warning about extra qualification on a declaration from a
warning to an error. C++ bans it, and both GCC and EDG diagnose it as an error. Microsoft allows it, so we still warn in Microsoft mode. Fixes <rdar://problem/11135644>. llvm-svn: 163831
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r--clang/lib/Sema/SemaDecl.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index 03b33af755c..92780d98cdb 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -3523,7 +3523,8 @@ bool Sema::diagnoseQualifiedDeclaration(CXXScopeSpec &SS, DeclContext *DC,
// void X::f();
// };
if (Cur->Equals(DC)) {
- Diag(Loc, diag::warn_member_extra_qualification)
+ Diag(Loc, LangOpts.MicrosoftExt? diag::warn_member_extra_qualification
+ : diag::err_member_extra_qualification)
<< Name << FixItHint::CreateRemoval(SS.getRange());
SS.clear();
return false;
OpenPOWER on IntegriCloud