aboutsummaryrefslogtreecommitdiff
path: root/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
commit2d901df3940ec1e63a0f9e846f5db3152698b6fb (patch)
treebb3efe9229ce71677e20b92dde5b57cb96cde5de /lib/AST/Expr.cpp
parenta5c6c5814b4c9f562247d2182eb59ccad128dbde (diff)
Don't error when setting a sub-structure variable via objc properties
in objective-c++ mode (do it for objective-c only). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@96012 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/Expr.cpp')
-rw-r--r--lib/AST/Expr.cpp7
1 files changed, 1 insertions, 6 deletions
diff --git a/lib/AST/Expr.cpp b/lib/AST/Expr.cpp
index 73a650f346..22eb28c359 100644
--- a/lib/AST/Expr.cpp
+++ b/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