summaryrefslogtreecommitdiff
path: root/shared/cplusplus/AST.cpp
diff options
context:
space:
mode:
authorRoberto Raggi <qtc-committer@nokia.com>2009-01-05 10:26:20 +0100
committerRoberto Raggi <qtc-committer@nokia.com>2009-01-05 10:26:20 +0100
commit5e40f21183178a5ae4023b91d6266bb0bea0ac97 (patch)
tree79f971abf48cc680ed35854ffdc7fd640f49379d /shared/cplusplus/AST.cpp
parent2fdbfe87efc26cc7927d39d59e63983cb0c01b93 (diff)
downloadqt-creator-5e40f21183178a5ae4023b91d6266bb0bea0ac97.tar.gz
Implemented IfStatementAST::lastToken().
Diffstat (limited to 'shared/cplusplus/AST.cpp')
-rw-r--r--shared/cplusplus/AST.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/shared/cplusplus/AST.cpp b/shared/cplusplus/AST.cpp
index 67ff46ca4f..33de30e968 100644
--- a/shared/cplusplus/AST.cpp
+++ b/shared/cplusplus/AST.cpp
@@ -1554,14 +1554,19 @@ unsigned IfStatementAST::firstToken() const
unsigned IfStatementAST::lastToken() const
{
- assert(0 && "review me");
if (else_statement)
return else_statement->lastToken();
else if (else_token)
return else_token + 1;
else if (statement)
return statement->lastToken();
- return rparen_token + 1;
+ else if (rparen_token)
+ return rparen_token + 1;
+ else if (condition)
+ return condition->lastToken();
+ else if (lparen_token)
+ return lparen_token + 1;
+ return if_token + 1;
}
void LabeledStatementAST::accept0(ASTVisitor *visitor)