[cfe-dev] Clang Python Bindings - Reading AST file dumped by clang
Jason Haslam via cfe-dev
cfe-dev at lists.llvm.org
Thu Dec 10 10:00:42 PST 2015
The AST dump is a debugging tool. It’s not the same thing as the serialized representation of a translation unit. Use libclang to parse and serialize your header instead of doing from the command line with clang-cl.
> On Dec 7, 2015, at 2:54 PM, Daniel Kats via cfe-dev <cfe-dev at lists.llvm.org> wrote:
> I am have generated a clang AST by running these commands on Windows on the Visual Studio command-line:
> clang-cl <header-name> -Xclang -ast-dump -fsyntax-only -fno-color-diagnostics -w
> And saved it in a file f.ast
> I now want to take that file as input into a Python script, so I wrote this code:
> index = Index.create()
> logging.debug( "Reading AST file...")
> tu = index.read("f.ast")
> logging.debug( "done parsing AST" )
> # other stuff below
> When I run this, I see command-line output:
> "Reading AST file..."
> And I get a popup indicating a C/C++ error in libclang.dll:
> "Expression: ((End-Start) & 3) == 0 && "Bitcode stream not a multiple of 4 bytes""
> Do you know why this happens, and how to fix?
> - Daniel
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
More information about the cfe-dev