Hi all,<div><br></div><div>I want to define macro by hand before running compile.</div><div><br></div><div>In code, I already setup a clang::Preprocessor.</div><div>I use:</div><div><br></div><div><div> mPP->setMacroInfo(&mPP->getIdentifierTable().get("__cplusplus"),</div>
<div> new clang::MacroInfo( mSourceMgr->getLocForStartOfFile( mSourceMgr->getMainFileID() ) ) );</div></div><div><br></div><div>But it segmentation fault and this is backtrace:</div><div>
<br></div><div><div>#0 llvm::StringMapImpl::LookupBucketFor (this=0xac, Name=...) at external/llvm/lib/Support/StringMap.cpp:56</div><div>#1 0x0805d180 in GetOrCreateValue<clang::IdentifierInfo*> (this=0xffea172c) at external/llvm/include/llvm/ADT/StringMap.h:370</div>
<div>#2 llvm::StringMap<clang::IdentifierInfo*, llvm::BumpPtrAllocator>::GetOrCreateValue (this=0xffea172c) at external/llvm/include/llvm/ADT/StringMap.h:392</div><div>#3 clang::IdentifierTable::get (this=0xffea172c) at external/clang/include/clang/Basic/IdentifierTable.h:362</div>
<div>#4 pndk::Compiler::setMacro (this=0xffea172c) at Compiler.cpp:269</div><div>#5 0x0805b259 in main (argc=8, argv=0xffea1a84) at Driver.cpp:71</div></div><div><br></div><div>I have no experience and no idea on clang macro handling.</div>
<div>Could someone help? </div><div><br></div><div>Big thanks!</div><div><br clear="all"><br>-- <br>Best regards,<br>Wen-Han<br>
</div>