Я использую clang для преобразования источника в источник. Я хотел бы сделать следующее:
У меня есть некоторый класс функций в C, которые являются va_arg
функциями, например, printf()
. В исходном файле может быть несколько вызовов printf()
. Я хочу разобрать исходный код и найти все эти вызовы на printf()
. Кроме того, я хочу найти тип аргументов, которые передаются в printf()
. Итак, если у меня есть что-то вроде
int a, b, c;
printf("%d%d%d", a, b, c);
Я хочу выяснить, что конкретный вызов printf
имеет тип printf(char*, int, int, int)
. Меня не особо волнуют квалификаторы.
Может кто-нибудь сказать мне, как я должен делать это в Clang? Любой пример, делающий что-то похожее на это, будет приветствоваться. Если бы вы даже могли сказать мне, на какие уроки я должен смотреть, и вкратце рассказать мне о том, чему я должен следовать, я был бы очень благодарен.