[cfe-dev] ASTContext: how to get an object or pointer of ASTContext
    Jiandong Wang 
    computerhenu at gmail.com
       
    Tue May 18 06:09:05 PDT 2010
    
    
  
Hi all:
    now I am trying to run my own ASTConsumer against AST, but not quite
sure how to do it, especially how to get an object or pointer of ASTContext.
BTW, ASTContext is required by ParseAST.
here is my code snippet:
_______________________________________
        MyDiagnosticClient DiagClient(llvm::errs());
Diagnostic Diags(&DiagClient);
 LangOptions Opts;
        TargetOptions TargetOpts;
        TargetInfo* Target = TargetInfo::CreateTargetInfo(Diags,
TargetOpts);
 SourceManager SM;
FileManager FM;
HeaderSearch Headers(FM);
llvm::StringRef filename("input.c");
const FileEntry* File = FM.getFile(filename);
 if (!File) {
  llvm::errs() << "Failed to open \'" << filename << "\'\n" ;
  return 1;
}
SM.createMainFileID(File, SourceLocation());
 Preprocessor PP(Diags, Opts, *Target, SM, Headers);
ASTConsumer* AstConsumer = new MyASTConsumer;
 ParseAST(PP, AstConsumer, *here need the third parameter ASTContext*);
//<------------------------- see here
 delete Target;
______________________________________
any ideas? Thanks in advance.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20100518/632bee5d/attachment.html>
    
    
More information about the cfe-dev
mailing list