[cfe-dev] source traversing with clang......

Douglas Gregor dgregor at apple.com
Thu Jan 13 10:52:40 PST 2011

On Jan 13, 2011, at 5:13 AM, jignesh vasoya wrote:

> Hi,
> I want to traverse source code of "C" language.
> i want to extract all the "for loops" in given C file. After extraction loop body i want to visit its body statements.
> then i want to extract all the functions one by one in the given source file.
> i want to do these using clang.
> what will be better? writing clang-plugin or separate program like whole program analysis?
> i may need to visit each and every statement of the function.

It's easier to write a clang-plugin or add a new action based on the -fsyntax-only action.

> how can i write AST walker that can walk through all the node?
> is there any sub type walker for loops and functions only(means that will visit only loops of functions)?

As suggested by Reid, RecursiveASTVisitor is your best bet.

	- Doug

More information about the cfe-dev mailing list