访问变量声明时,Clang AST Visitor返回错误的数据类型

时间:2016-06-25 16:24:21

标签: c++ abstract-syntax-tree llvm-clang

您好我已经使用clang实现了AST访问者。它可以在声明变量时正确检测,但有时它会为变量返回错误的类型。例如,如果变量声明为size_t或char32_t,甚至是george,则将其类型返回为int。 我的代码在这里:

virtual bool VisitVarDecl(VarDecl *var) 
{
    numVariables++;
    string varName = var->getQualifiedNameAsString();
    string varType = var->getType().getAsString();
    cout << "VisitVarDecl: " << varName << " of type " << varType << "\n";        
    APIs << varType << ", ";
    return true;
}

任何人都知道为什么? 我希望我的代码能够识别任何变量声明,但即使是虚构的类型,例如test i; george x; 谢谢

0 个答案:

没有答案