diff --git a/clang/lib/Interpreter/IncrementalParser.cpp b/clang/lib/Interpreter/IncrementalParser.cpp index 70baabfeb8fbd4..84b4d779d43c5b 100644 --- a/clang/lib/Interpreter/IncrementalParser.cpp +++ b/clang/lib/Interpreter/IncrementalParser.cpp @@ -54,7 +54,8 @@ class IncrementalAction : public WrapperFrontendAction { Err = llvm::createStringError( std::errc::state_not_recoverable, "Driver initialization failed. " - "Incremental mode for action is not supported"); + "Incremental mode for action %d is not supported", + CI.getFrontendOpts().ProgramAction); return Act; case frontend::ASTDump: LLVM_FALLTHROUGH; @@ -63,6 +64,8 @@ class IncrementalAction : public WrapperFrontendAction { case frontend::ParseSyntaxOnly: Act = CreateFrontendAction(CI); break; + case frontend::EmitAssembly: + LLVM_FALLTHROUGH; case frontend::EmitObj: LLVM_FALLTHROUGH; case frontend::EmitLLVMOnly: diff --git a/clang/lib/Interpreter/Interpreter.cpp b/clang/lib/Interpreter/Interpreter.cpp index 8de38c0afcd913..79acb5bd689824 100644 --- a/clang/lib/Interpreter/Interpreter.cpp +++ b/clang/lib/Interpreter/Interpreter.cpp @@ -157,7 +157,7 @@ IncrementalCompilerBuilder::create(std::vector &ClangArgv) { ParseDiagnosticArgs(*DiagOpts, ParsedArgs, &Diags); driver::Driver Driver(/*MainBinaryName=*/ClangArgv[0], - llvm::sys::getDefaultTargetTriple(), Diags); + llvm::sys::getProcessTriple(), Diags); Driver.setCheckInputsExist(false); // the input comes from mem buffers llvm::ArrayRef RF = llvm::makeArrayRef(ClangArgv); std::unique_ptr Compilation(Driver.BuildCompilation(RF));