summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/Expr.cpp
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2010-02-12 21:02:28 +0000
committerFariborz Jahanian <fjahanian@apple.com>2010-02-12 21:02:28 +0000
commite5c118f60dca520bc8a9e5a8a4f683d69d7c187f (patch)
tree058dd5e2cb6c175e3939156f0f610575b0862175 /clang/lib/AST/Expr.cpp
parent392be58cad0f051b4e7e252b44cef14b547f9b81 (diff)
downloadbcm5719-llvm-e5c118f60dca520bc8a9e5a8a4f683d69d7c187f.tar.gz
bcm5719-llvm-e5c118f60dca520bc8a9e5a8a4f683d69d7c187f.zip
Don't error when setting a sub-structure variable via objc properties
in objective-c++ mode (do it for objective-c only). llvm-svn: 96012
Diffstat (limited to 'clang/lib/AST/Expr.cpp')
-rw-r--r--clang/lib/AST/Expr.cpp7
1 files changed, 1 insertions, 6 deletions
diff --git a/clang/lib/AST/Expr.cpp b/clang/lib/AST/Expr.cpp
index 73a650f3464..22eb28c3599 100644
--- a/clang/lib/AST/Expr.cpp
+++ b/clang/lib/AST/Expr.cpp
@@ -1068,12 +1068,7 @@ Expr::isLvalueResult Expr::isLvalueInternal(ASTContext &Ctx) const {
if (isa<FieldDecl>(Member)) {
if (m->isArrow())
return LV_Valid;
- Expr *BaseExp = m->getBase();
- if (BaseExp->getStmtClass() == ObjCPropertyRefExprClass)
- return LV_SubObjCPropertySetting;
- return
- (BaseExp->getStmtClass() == ObjCImplicitSetterGetterRefExprClass) ?
- LV_SubObjCPropertyGetterSetting : BaseExp->isLvalue(Ctx);
+ return m->getBase()->isLvalue(Ctx);
}
// -- If it refers to a static member function [...], then
OpenPOWER on IntegriCloud