Commit 7f04af17 authored by Roberto Raggi's avatar Roberto Raggi

Mark the elaborated type specifiers.

parent c07a6118
......@@ -480,6 +480,23 @@ bool CheckSymbols::visit(NamedTypeSpecifierAST *)
return true;
}
bool CheckSymbols::visit(ElaboratedTypeSpecifierAST *ast)
{
accept(ast->attribute_list);
if (ast->name) {
if (const Name *name = ast->name->name) {
if (name->isNameId() || name->isTemplateNameId()) {
addUse(ast->name, Use::Type);
return false;
}
}
}
accept(ast->name);
return false;
}
bool CheckSymbols::visit(MemberAccessAST *ast)
{
accept(ast->base_expression);
......
......@@ -130,6 +130,7 @@ protected:
virtual bool visit(UsingDirectiveAST *);
virtual bool visit(SimpleDeclarationAST *);
virtual bool visit(NamedTypeSpecifierAST *);
virtual bool visit(ElaboratedTypeSpecifierAST *ast);
virtual bool visit(EnumeratorAST *);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment