diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2016-02-07 02:30:55 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2016-02-07 02:30:55 +0000 |
commit | 407f36bde94d10fd462c1aa2e195dc91db45720d (patch) | |
tree | 9fbae69ed996a191425bb92335163f55e168bf95 /clang/lib/Sema/SemaExprCXX.cpp | |
parent | 905a646c248fc7a603d9cd038b07a4b875abceb8 (diff) | |
download | bcm5719-llvm-407f36bde94d10fd462c1aa2e195dc91db45720d.tar.gz bcm5719-llvm-407f36bde94d10fd462c1aa2e195dc91db45720d.zip |
Sema: handle typo correction with ARC'ed objc properties
We would previously assert in findCapturingExpr when performing a typo
correction resulting in an assignment of an ObjC property with a strong lifetype
specifier due to the expression not being rooted in the file (invalid SLoc)
during the retain cycle check on the typo-corrected expression. Handle the
expression type appropriately during the TreeTransform to ensure that we have a
source location associated with the expression.
Fixes PR26486.
llvm-svn: 260016
Diffstat (limited to 'clang/lib/Sema/SemaExprCXX.cpp')
-rw-r--r-- | clang/lib/Sema/SemaExprCXX.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaExprCXX.cpp b/clang/lib/Sema/SemaExprCXX.cpp index 32aa5a69d07..3083a1f50df 100644 --- a/clang/lib/Sema/SemaExprCXX.cpp +++ b/clang/lib/Sema/SemaExprCXX.cpp @@ -6586,6 +6586,10 @@ public: ExprResult TransformBlockExpr(BlockExpr *E) { return Owned(E); } + ExprResult TransformObjCPropertyRefExpr(ObjCPropertyRefExpr *E) { + return Owned(E); + } + ExprResult Transform(Expr *E) { ExprResult Res; while (true) { |