J'utilise clang pour faire une sorte de transformation source-source. Je voudrais faire ce qui suit:Analyse d'appel de fonction en utilisant Clang
J'ai une classe de fonctions dans C qui sont va_arg
fonctions, par exemple printf()
. Il peut y avoir un certain nombre d'appels à printf()
dans le fichier source. Je veux analyser le code source et trouver tous ces appels à printf()
. En outre, je veux trouver le type d'arguments qui sont passés à printf()
. Donc, si j'ai quelque chose comme
int a, b, c;
printf("%d%d%d", a, b, c);
Je veux être en mesure de comprendre que l'appel particulier à printf
est de type printf(char*, int, int, int)
. Je ne me soucie pas particulièrement des qualificatifs.
Quelqu'un pourrait-il me dire comment je devrais faire cela en clang? Tout exemple faisant quelque chose de similaire serait le bienvenu. Si vous pouviez même me dire ce que toutes les classes que je devrais regarder et en bref me dire le flux que je devrais suivre, je serais très reconnaissant.