Continue parsing more postfix expressions, even after semantic
errors. Improves code completion in yet another case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114255 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaCodeComplete.cpp b/lib/Sema/SemaCodeComplete.cpp
index e305172..371921c 100644
--- a/lib/Sema/SemaCodeComplete.cpp
+++ b/lib/Sema/SemaCodeComplete.cpp
@@ -2757,9 +2757,11 @@
Results.data(),Results.size());
}
-void Sema::CodeCompletePostfixExpression(Scope *S, Expr *E) {
- if (getLangOptions().ObjC1)
- CodeCompleteObjCInstanceMessage(S, E, 0, 0, false);
+void Sema::CodeCompletePostfixExpression(Scope *S, ExprResult E) {
+ if (E.isInvalid())
+ CodeCompleteOrdinaryName(S, PCC_RecoveryInFunction);
+ else if (getLangOptions().ObjC1)
+ CodeCompleteObjCInstanceMessage(S, E.take(), 0, 0, false);
}
static void AddObjCProperties(ObjCContainerDecl *Container,