diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-04-05 08:36:58 +0000 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-04-05 08:36:58 +0000 |
commit | be55c60d94f1c1fc4a969a2f40a95cbf21e8eaca (patch) | |
tree | 0bf077628d073c91862e267f8c15492af865492d /clang/lib/Sema/SemaDecl.cpp | |
parent | 23af89cc9a9a609efb684e59e9c848bb9018d67d (diff) | |
download | bcm5719-llvm-be55c60d94f1c1fc4a969a2f40a95cbf21e8eaca.tar.gz bcm5719-llvm-be55c60d94f1c1fc4a969a2f40a95cbf21e8eaca.zip |
Don't issue a warning if the shadowing declaration is in a class
Follow-up to r299363 "Enhance -Wshadow to warn when shadowing typedefs or type
aliases".
Patch by Ahmed Asadi.
Differential Revision: https://reviews.llvm.org/D31235
llvm-svn: 299522
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index 7659fba14a3..c0a10158405 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -6744,6 +6744,10 @@ NamedDecl *Sema::getShadowedDeclaration(const VarDecl *D, /// if it doesn't shadow any declaration or shadowing warnings are disabled. NamedDecl *Sema::getShadowedDeclaration(const TypedefNameDecl *D, const LookupResult &R) { + // Don't warn if typedef declaration is part of a class + if (D->getDeclContext()->isRecord()) + return nullptr; + if (!shouldWarnIfShadowedDecl(Diags, R)) return nullptr; |