summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExprMember.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2014-01-17 22:29:43 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2014-01-17 22:29:43 +0000
commit59d26d2e675f7a924f5e92ef030aaa3b70995924 (patch)
treea5572f67e7478f0675ab44f0fd6e0ad41b50a109 /clang/lib/Sema/SemaExprMember.cpp
parent5d05ed1d1725f801b0d11ce2b2cc712484085cb0 (diff)
downloadbcm5719-llvm-59d26d2e675f7a924f5e92ef030aaa3b70995924.tar.gz
bcm5719-llvm-59d26d2e675f7a924f5e92ef030aaa3b70995924.zip
PR12788: Remove unnecessary and incorrect special case for indirect fields.
This caused us to skip a step that was essential for correct access control. llvm-svn: 199522
Diffstat (limited to 'clang/lib/Sema/SemaExprMember.cpp')
-rw-r--r--clang/lib/Sema/SemaExprMember.cpp9
1 files changed, 1 insertions, 8 deletions
diff --git a/clang/lib/Sema/SemaExprMember.cpp b/clang/lib/Sema/SemaExprMember.cpp
index 1a08c5b6bea..dea44678442 100644
--- a/clang/lib/Sema/SemaExprMember.cpp
+++ b/clang/lib/Sema/SemaExprMember.cpp
@@ -1752,14 +1752,7 @@ Sema::BuildImplicitMemberExpr(const CXXScopeSpec &SS,
assert(!R.empty() && !R.isAmbiguous());
SourceLocation loc = R.getNameLoc();
-
- // We may have found a field within an anonymous union or struct
- // (C++ [class.union]).
- // FIXME: template-ids inside anonymous structs?
- if (IndirectFieldDecl *FD = R.getAsSingle<IndirectFieldDecl>())
- return BuildAnonymousStructUnionMemberReference(SS, R.getNameLoc(), FD,
- R.begin().getPair());
-
+
// If this is known to be an instance access, go ahead and build an
// implicit 'this' expression now.
// 'this' expression now.
OpenPOWER on IntegriCloud