summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/CheckDeclaration.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared/cplusplus/CheckDeclaration.cpp')
-rw-r--r--src/shared/cplusplus/CheckDeclaration.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/shared/cplusplus/CheckDeclaration.cpp b/src/shared/cplusplus/CheckDeclaration.cpp
index ab359d9c05..65d66be020 100644
--- a/src/shared/cplusplus/CheckDeclaration.cpp
+++ b/src/shared/cplusplus/CheckDeclaration.cpp
@@ -594,16 +594,16 @@ bool CheckDeclaration::visit(ObjCMethodDeclarationAST *ast)
return false;
Symbol *symbol;
- if (!ast->function_body) {
- Declaration *decl = control()->newDeclaration(ast->firstToken(), methodType->name());
- decl->setType(methodType);
- symbol = decl;
- } else {
+ if (ast->function_body) {
if (!semantic()->skipFunctionBodies()) {
semantic()->check(ast->function_body, methodType->members());
}
symbol = methodType;
+ } else {
+ Declaration *decl = control()->newDeclaration(ast->firstToken(), methodType->name());
+ decl->setType(methodType);
+ symbol = decl;
}
symbol->setStartOffset(tokenAt(ast->firstToken()).offset);