Hi I am new in Compiler development, and am wondering how AST look like. I have a small section of code, and I use Clang for generating the AST. I don\'t get much information ou
There is a small confusion between the various options available:
-ast-print
will pretty-print the current AST, that is, it will render the code it understood as closely as possible to what it parsed (but making some things explicit, like the apparition of the this
)-ast-dump
will generate a lisp-like representation of the current ASTThe pretty printer can be useful to check that the AST is lossless (ie, preserved the const
-ness of such expression, etc...) but is not really about development.
If you want to hack on the compiler, you need -ast-dump
, which will generate an output that maps directly the in-memory representation of the code that was parsed.