问题描述
最近我写了一个 Clang-tidy 命名检查,检查用户定义变量的名称是否以 '_' 字符开头。
但是我发现Compiler在处理一些表达式时会定义一些变量。
例如:
int main() {
int arr[3] = {0,1,2};
for(auto &i : arr) {
i++;
}
}
在处理'for(auto &i : arr)'表达式时,编译器将分别定义三个名称为'__begin1,__end1,__range1'的变量,与我的命名检查匹配,但我想忽略这些编译器定义的变量。>
warning: variable_v name '__begin1' should not start with '_' [readability-ks-variable-naming]
for(auto &i : arr) {
^
warning: variable_v name '__end1' should not start with '_' [readability-ks-variable-naming]
warning: variable_v name '__range1' should not start with '_' [readability-ks-variable-naming]
for(auto &i : arr) {
^
如何在 Clang AST 中仅识别用户定义的变量?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)