[cfe-dev] accessing clang's AST

Charles Davis cdavis at mymail.mines.edu
Fri Feb 26 19:03:20 PST 2010

Octav Chipara wrote:
> Dear Chip,
> Thanks for the info. Is there an plug-in the exports the AST?
No. However, it's really not necessary. If you derive a class from
ASTConsumer (from the AST library), you will be fed each top-level
declaration from the AST as the parser builds it up (see
ASTConsumer::HandleTopLevelDecl()). Or, you can traverse the AST all at
once by implementing the HandleTranslationUnit() method (also in
ASTConsumer), which receives a translation unit decl from which you can
get every other node in the AST.
> I tried
> the ast-dump, however, it crashes:
>  0x10490e360 Assertion failed: (0 && "Unexpected decl"), function
> DumpDeclarator, file StmtDumper.cpp, line 263.
That's not supposed to happen.

Can we see the source that caused this? Put it up on pastebin or some such.


More information about the cfe-dev mailing list