Предположим, у меня есть следующая программа:
using Foo = int;
void f(Foo x) {}
Foo y = 3;
auto z = Foo(4);
Я бы хотел сопоставить все вхождения Foo
в этой программе, используя Clang's matcher API: в приведенном выше примере Foo встречается четыре раза.
Когда я выкидываю эту программу с помощью clang-ast (https://godbolt.org/z/yDromM), кажется, что нет никаких узлов, которые бы разделяли между этими случаями. Означает ли это, что я должен сопоставлять каждый «сайт» индивидуально?