[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.

Chip




More information about the cfe-dev mailing list