diff options
| author | Douglas Gregor <dgregor@apple.com> | 2010-04-06 15:09:27 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2010-04-06 15:09:27 +0000 |
| commit | be9ea80abfcea6fe3c26a09f57d3604830651935 (patch) | |
| tree | 28bc9e8f8cfe445750396bbd1a15408fb364d5ab /clang/lib/Parse/ParseExpr.cpp | |
| parent | 9003e0f0c78849d2b32d23de731676990a03cc97 (diff) | |
| download | bcm5719-llvm-be9ea80abfcea6fe3c26a09f57d3604830651935.tar.gz bcm5719-llvm-be9ea80abfcea6fe3c26a09f57d3604830651935.zip | |
Perform code-completion within ParseCastExpression, which handles,
e.g., the right-hand side of binary expressions.
llvm-svn: 100526
Diffstat (limited to 'clang/lib/Parse/ParseExpr.cpp')
| -rw-r--r-- | clang/lib/Parse/ParseExpr.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/clang/lib/Parse/ParseExpr.cpp b/clang/lib/Parse/ParseExpr.cpp index af91021d33c..965f764dcf6 100644 --- a/clang/lib/Parse/ParseExpr.cpp +++ b/clang/lib/Parse/ParseExpr.cpp @@ -897,11 +897,16 @@ Parser::OwningExprResult Parser::ParseCastExpression(bool isUnaryExpression, } case tok::caret: return ParsePostfixExpressionSuffix(ParseBlockLiteralExpression()); + case tok::code_completion: + Actions.CodeCompleteOrdinaryName(CurScope, Action::CCC_Expression); + ConsumeToken(); + return ParseCastExpression(isUnaryExpression, isAddressOfOperand, + NotCastExpr, TypeOfCast); case tok::l_square: // These can be followed by postfix-expr pieces. if (getLang().ObjC1) return ParsePostfixExpressionSuffix(ParseObjCMessageExpression()); - // FALL THROUGH. + // FALL THROUGH. default: NotCastExpr = true; return ExprError(); |

