Adapt llvmorg-20-init-12964-gdf9a14d7bbf1: createDiagnostics

This commit is contained in:
Fangrui Song 2024-11-23 18:25:48 -08:00
parent 3640f899f1
commit 4331c89586
3 changed files with 20 additions and 7 deletions

View File

@ -124,9 +124,11 @@ buildCompilerInvocation(const std::string &main, std::vector<const char *> args,
args.insert(args.begin() + 1, std::begin(arr), std::end(arr)); args.insert(args.begin() + 1, std::begin(arr), std::end(arr));
} }
IntrusiveRefCntPtr<DiagnosticsEngine> diags( IntrusiveRefCntPtr<DiagnosticsEngine> diags(CompilerInstance::createDiagnostics(
CompilerInstance::createDiagnostics(new DiagnosticOptions, #if LLVM_VERSION_MAJOR >= 20
new IgnoringDiagConsumer, true)); *vfs,
#endif
new DiagnosticOptions, new IgnoringDiagConsumer, true));
#if LLVM_VERSION_MAJOR < 12 // llvmorg-12-init-5498-g257b29715bb #if LLVM_VERSION_MAJOR < 12 // llvmorg-12-init-5498-g257b29715bb
driver::Driver d(args[0], llvm::sys::getDefaultTargetTriple(), *diags, vfs); driver::Driver d(args[0], llvm::sys::getDefaultTargetTriple(), *diags, vfs);
#else #else

View File

@ -1312,7 +1312,11 @@ index(SemaManager *manager, WorkingFiles *wfiles, VFS *vfs,
IndexDiags dc; IndexDiags dc;
auto clang = std::make_unique<CompilerInstance>(pch); auto clang = std::make_unique<CompilerInstance>(pch);
clang->setInvocation(std::move(ci)); clang->setInvocation(std::move(ci));
clang->createDiagnostics(&dc, false); clang->createDiagnostics(
#if LLVM_VERSION_MAJOR >= 20
*fs,
#endif
&dc, false);
clang->getDiagnostics().setIgnoreAllWarnings(true); clang->getDiagnostics().setIgnoreAllWarnings(true);
clang->setTarget(TargetInfo::CreateTargetInfo( clang->setTarget(TargetInfo::CreateTargetInfo(
clang->getDiagnostics(), clang->getInvocation().TargetOpts)); clang->getDiagnostics(), clang->getInvocation().TargetOpts));

View File

@ -288,7 +288,11 @@ buildCompilerInstance(Session &session, std::unique_ptr<CompilerInvocation> ci,
auto clang = std::make_unique<CompilerInstance>(session.pch); auto clang = std::make_unique<CompilerInstance>(session.pch);
clang->setInvocation(std::move(ci)); clang->setInvocation(std::move(ci));
clang->createDiagnostics(&dc, false); clang->createDiagnostics(
#if LLVM_VERSION_MAJOR >= 20
*fs,
#endif
&dc, false);
clang->setTarget(TargetInfo::CreateTargetInfo( clang->setTarget(TargetInfo::CreateTargetInfo(
clang->getDiagnostics(), clang->getInvocation().TargetOpts)); clang->getDiagnostics(), clang->getInvocation().TargetOpts));
if (!clang->hasTarget()) if (!clang->hasTarget())
@ -368,8 +372,11 @@ void buildPreamble(Session &session, CompilerInvocation &ci,
#endif #endif
StoreDiags dc(task.path); StoreDiags dc(task.path);
IntrusiveRefCntPtr<DiagnosticsEngine> de = IntrusiveRefCntPtr<DiagnosticsEngine> de = CompilerInstance::createDiagnostics(
CompilerInstance::createDiagnostics(&ci.getDiagnosticOpts(), &dc, false); #if LLVM_VERSION_MAJOR >= 20
*fs,
#endif
&ci.getDiagnosticOpts(), &dc, false);
if (oldP) { if (oldP) {
std::lock_guard lock(session.wfiles->mutex); std::lock_guard lock(session.wfiles->mutex);
for (auto &include : oldP->includes) for (auto &include : oldP->includes)