diff options
author | Roberto Raggi <roberto.raggi@nokia.com> | 2010-02-11 10:18:05 +0100 |
---|---|---|
committer | Roberto Raggi <roberto.raggi@nokia.com> | 2010-02-11 10:18:05 +0100 |
commit | 75229edcf95accc43c7824630070c9402dc5beba (patch) | |
tree | ae65fc0bf8cff34fed851a37ed46993610ceac44 /src/libs/cplusplus | |
parent | 616227963009ca1af868f735b16793119b7395ab (diff) | |
download | qt-creator-75229edcf95accc43c7824630070c9402dc5beba.tar.gz |
Process the formal arguments of inline methods when searching the usages of a symbol.
Diffstat (limited to 'src/libs/cplusplus')
-rw-r--r-- | src/libs/cplusplus/FindUsages.cpp | 14 | ||||
-rw-r--r-- | src/libs/cplusplus/FindUsages.h | 1 |
2 files changed, 9 insertions, 6 deletions
diff --git a/src/libs/cplusplus/FindUsages.cpp b/src/libs/cplusplus/FindUsages.cpp index 7b79b0ac16..a8d0e456b6 100644 --- a/src/libs/cplusplus/FindUsages.cpp +++ b/src/libs/cplusplus/FindUsages.cpp @@ -69,6 +69,7 @@ void FindUsages::operator()(Symbol *symbol) _references.clear(); _usages.clear(); _declSymbol = symbol; + _inSimpleDeclaration = 0; _id = 0; if (_declSymbol && 0 != (_id = _declSymbol->identifier())) @@ -450,15 +451,18 @@ bool FindUsages::visit(FunctionDeclaratorAST *ast) return false; } -bool FindUsages::visit(SimpleDeclarationAST *) +bool FindUsages::visit(SimpleDeclarationAST *ast) { + for (SpecifierListAST *it = ast->decl_specifier_list; it; it = it->next) + accept(it->value); + ++_inSimpleDeclaration; - return true; + for (DeclaratorListAST *it = ast->declarator_list; it; it = it->next) + accept(it->value); + --_inSimpleDeclaration; + return false; } -void FindUsages::endVisit(SimpleDeclarationAST *) -{ --_inSimpleDeclaration; } - bool FindUsages::visit(ObjCSelectorWithoutArgumentsAST *ast) { const Identifier *id = identifier(ast->name_token); diff --git a/src/libs/cplusplus/FindUsages.h b/src/libs/cplusplus/FindUsages.h index 2b066fa2fa..313676fc90 100644 --- a/src/libs/cplusplus/FindUsages.h +++ b/src/libs/cplusplus/FindUsages.h @@ -99,7 +99,6 @@ protected: virtual bool visit(ExpressionOrDeclarationStatementAST *ast); virtual bool visit(FunctionDeclaratorAST *ast); virtual bool visit(SimpleDeclarationAST *); - virtual void endVisit(SimpleDeclarationAST *); virtual bool visit(ObjCSelectorWithoutArgumentsAST *ast); virtual bool visit(ObjCSelectorWithArgumentsAST *ast); |