C++ 如何在clang AST中获取无效/未解析类型的实际名称

C++ 如何在clang AST中获取无效/未解析类型的实际名称,c++,parsing,abstract-syntax-tree,llvm-clang,libtooling,C++,Parsing,Abstract Syntax Tree,Llvm Clang,Libtooling,考虑以下代码 int function() { unknownType variable; } 在上面的代码段中,unknownType在编译时没有解析,因此clang将在AST中将默认类型设置为int,并将声明标记为无效 现在的问题是在遍历AST时,如何获取名称unknownType。 使用现有API获取类型名称将给出int,其源范围也无效 有人遇到过这样的问题吗?请帮忙 谢谢, Hemant您是否找到了解决方案或解决方法?是的,使用lexer API。我在那个位置提取了原始代码,并在标

考虑以下代码

int function()
{
  unknownType variable;
}
在上面的代码段中,unknownType在编译时没有解析,因此clang将在AST中将默认类型设置为int,并将声明标记为无效

现在的问题是在遍历AST时,如何获取名称unknownType。 使用现有API获取类型名称将给出int,其源范围也无效

有人遇到过这样的问题吗?请帮忙

谢谢,
Hemant

您是否找到了解决方案或解决方法?是的,使用lexer API。我在那个位置提取了原始代码,并在标识符之前提取了文本。这种变通方法大部分时间都有效。但并不优雅。