diff options
author | Douglas Gregor <dgregor@apple.com> | 2009-09-21 20:51:25 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2009-09-21 20:51:25 +0000 |
commit | 9d64c5e3a515289ae2c7ae80a35ac4e37fa2f4cc (patch) | |
tree | 75c811d816377004939562ae2ccf4ebc25f02ed0 /clang/lib/Parse/ParseStmt.cpp | |
parent | a74039426db114c93768acc1a705aaf09b7f6eb8 (diff) | |
download | bcm5719-llvm-9d64c5e3a515289ae2c7ae80a35ac4e37fa2f4cc.tar.gz bcm5719-llvm-9d64c5e3a515289ae2c7ae80a35ac4e37fa2f4cc.zip |
Code completion for ordinary names when we're starting a declaration, expression, or statement
llvm-svn: 82481
Diffstat (limited to 'clang/lib/Parse/ParseStmt.cpp')
-rw-r--r-- | clang/lib/Parse/ParseStmt.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/lib/Parse/ParseStmt.cpp b/clang/lib/Parse/ParseStmt.cpp index 4fdcf2a077f..907ca802b4a 100644 --- a/clang/lib/Parse/ParseStmt.cpp +++ b/clang/lib/Parse/ParseStmt.cpp @@ -90,6 +90,11 @@ Parser::ParseStatementOrDeclaration(bool OnlyStatement) { return ParseObjCAtStatement(AtLoc); } + case tok::code_completion: + Actions.CodeCompleteOrdinaryName(CurScope); + ConsumeToken(); + return ParseStatementOrDeclaration(OnlyStatement); + case tok::identifier: if (NextToken().is(tok::colon)) { // C99 6.8.1: labeled-statement // identifier ':' statement @@ -918,6 +923,11 @@ Parser::OwningStmtResult Parser::ParseForStatement() { OwningStmtResult FirstPart(Actions); OwningExprResult SecondPart(Actions), ThirdPart(Actions); + if (Tok.is(tok::code_completion)) { + Actions.CodeCompleteOrdinaryName(CurScope); + ConsumeToken(); + } + // Parse the first part of the for specifier. if (Tok.is(tok::semi)) { // for (; // no first part, eat the ';'. |