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.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/shared/cplusplus/CheckDeclaration.cpp b/src/shared/cplusplus/CheckDeclaration.cpp
index f82394548c..9543973055 100644
--- a/src/shared/cplusplus/CheckDeclaration.cpp
+++ b/src/shared/cplusplus/CheckDeclaration.cpp
@@ -464,7 +464,7 @@ bool CheckDeclaration::visit(UsingDirectiveAST *ast)
return false;
}
-bool CheckDeclaration::visit(ObjCProtocolDeclarationAST *ast)
+bool CheckDeclaration::visit(ObjCProtocolForwardDeclarationAST *ast)
{
const unsigned sourceLocation = ast->firstToken();
@@ -491,7 +491,7 @@ bool CheckDeclaration::visit(ObjCProtocolDeclarationAST *ast)
return false;
}
-bool CheckDeclaration::visit(ObjCProtocolDefinitionAST *ast)
+bool CheckDeclaration::visit(ObjCProtocolDeclarationAST *ast)
{
unsigned sourceLocation;
if (ast->name)
@@ -511,7 +511,7 @@ bool CheckDeclaration::visit(ObjCProtocolDefinitionAST *ast)
return false;
}
-bool CheckDeclaration::visit(ObjCClassDeclarationAST *ast)
+bool CheckDeclaration::visit(ObjCClassForwardDeclarationAST *ast)
{
const unsigned sourceLocation = ast->firstToken();
@@ -538,7 +538,7 @@ bool CheckDeclaration::visit(ObjCClassDeclarationAST *ast)
return false;
}
-bool CheckDeclaration::visit(ObjCClassInterfaceDefinitionAST *ast)
+bool CheckDeclaration::visit(ObjCClassDeclarationAST *ast)
{
unsigned sourceLocation;
if (ast->class_name)
@@ -552,7 +552,7 @@ bool CheckDeclaration::visit(ObjCClassInterfaceDefinitionAST *ast)
klass->setEndOffset(tokenAt(ast->lastToken()).offset);
ast->symbol = klass;
- // TODO: walk super-class, and protocols (EV)
+ // TODO: walk category name, super-class, and protocols (EV)
_scope->enterSymbol(klass);
int previousObjCVisibility = semantic()->switchObjCVisibility(Function::Protected);
@@ -563,6 +563,8 @@ bool CheckDeclaration::visit(ObjCClassInterfaceDefinitionAST *ast)
}
}
+ (void) semantic()->switchObjCVisibility(Function::Public);
+
for (DeclarationListAST *it = ast->member_declarations; it; it = it->next) {
semantic()->check(it->declaration, klass->members());
}