summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/CheckSpecifier.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared/cplusplus/CheckSpecifier.cpp')
-rw-r--r--src/shared/cplusplus/CheckSpecifier.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/shared/cplusplus/CheckSpecifier.cpp b/src/shared/cplusplus/CheckSpecifier.cpp
index c112561f16..103357c5a6 100644
--- a/src/shared/cplusplus/CheckSpecifier.cpp
+++ b/src/shared/cplusplus/CheckSpecifier.cpp
@@ -80,6 +80,17 @@ FullySpecifiedType CheckSpecifier::check(SpecifierAST *specifier, Scope *scope)
return switchFullySpecifiedType(previousType);
}
+FullySpecifiedType CheckSpecifier::check(ObjCTypeNameAST *typeName, Scope *scope)
+{
+ FullySpecifiedType previousType = switchFullySpecifiedType(FullySpecifiedType());
+ Scope *previousScope = switchScope(scope);
+
+ accept(typeName);
+
+ (void) switchScope(previousScope);
+ return switchFullySpecifiedType(previousType);
+}
+
SpecifierAST *CheckSpecifier::switchSpecifier(SpecifierAST *specifier)
{
SpecifierAST *previousSpecifier = _specifier;
@@ -402,4 +413,11 @@ bool CheckSpecifier::visit(AttributeSpecifierAST *ast)
return false;
}
+bool CheckSpecifier::visit(ObjCTypeNameAST * /*ast*/)
+{
+ // TODO: implement this (EV)
+ _fullySpecifiedType = FullySpecifiedType();
+ return false;
+}
+
CPLUSPLUS_END_NAMESPACE