Mopsa_c_parser.Clang_parserSourceClang_parser - Extracting Clang AST to OCaml
Interface to Clang AST: we call Clang to parse files and convert the AST into OCaml. This is a low-level interface: the returned AST stays close to Clang. Thus, the interface may evolve from Clang versions to versions.
See Clang_AST for the definition of the AST types, as well as the parts that we don't support yet.
Returns the default target, which corresponds to the host.
Gets the target informations (type width and alignment, ...) for the given target.
type parse_result = {parse_decl : Clang_AST.decl;AST.
*)parse_diag : Clang_AST.diagnostic list;Warnings and errors.
*)parse_comments : Clang_AST.comment list;C/C++ comments.
*)parse_macros : Clang_AST.macro list;Macros.
*)parse_files : string list;Files read during parsing.
*)}val parse :
command:string ->
target:Clang_AST.target_options ->
filename:string ->
args:string array ->
parse_resultParse the source file with the specified command (e.g., "clang" or "clang++") for the specified target, given the the specified compile-time options.