当一行上有多个变量时,-ast-dump vardecl的解释是什么?

时间:2019-02-10 22:39:17

标签: clang

我正在使用-ast-dump的输出。

clang -cc1 -ast-dump

对于具有多个变量的声明,VarDecls记录中的列没有意义。

我有这个声明:

int  variable1,   variable2;

输出是这样的

|-VarDecl 0xd827b8a460 <x.i:1:1, col:6> col:6 variable1 'int'
`-VarDecl 0xd827b8a518 <col:1, col:19> col:19 variable2 'int'

第一个VarDecl记录描述了一个捕获类型但不捕获变量名的范围,但是col:6准确地指向了变量名。

第二个VarDecl令人困惑,因为它的范围包括类型和第一个变量,但是随后col:19允许我找到变量名。

这似乎不一致,我希望VarDecl中的范围仅包含第二个变量的类型

这是错误还是功能?

0 个答案:

没有答案