summaryrefslogtreecommitdiff
path: root/shared/cplusplus/AST.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'shared/cplusplus/AST.cpp')
-rw-r--r--shared/cplusplus/AST.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/shared/cplusplus/AST.cpp b/shared/cplusplus/AST.cpp
index 7774d4d71f..c495ea1881 100644
--- a/shared/cplusplus/AST.cpp
+++ b/shared/cplusplus/AST.cpp
@@ -1940,15 +1940,12 @@ void SimpleDeclarationAST::accept0(ASTVisitor *visitor)
unsigned SimpleDeclarationAST::firstToken() const
{
- for (SpecifierAST *it = decl_specifier_seq; it; it = it->next) {
- if (! it->next)
- return it->firstToken();
- }
- for (DeclaratorListAST *it = declarators; it; it = it->next) {
- if (! it->next)
- return it->firstToken();
- }
- return semicolon_token;
+ if (decl_specifier_seq)
+ return decl_specifier_seq->firstToken();
+ else if (declarators)
+ return declarators->firstToken();
+ else
+ return semicolon_token;
}
unsigned SimpleDeclarationAST::lastToken() const