forked from OSchip/llvm-project
[clangd] Use CommandMangler in TestTU
This makes testing setup look closer to production. Differential Revision: https://reviews.llvm.org/D106535
This commit is contained in:
parent
f86570cd52
commit
d2a6ec8eae
|
@ -7,6 +7,7 @@
|
|||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "TestTU.h"
|
||||
#include "CompileCommands.h"
|
||||
#include "Compiler.h"
|
||||
#include "Diagnostics.h"
|
||||
#include "TestFS.h"
|
||||
|
@ -56,6 +57,9 @@ ParseInputs TestTU::inputs(MockFS &FS) const {
|
|||
// Put the file name at the end -- this allows the extra arg (-xc++) to
|
||||
// override the language setting.
|
||||
Argv.push_back(FullFilename);
|
||||
|
||||
auto Mangler = CommandMangler::forTests();
|
||||
Mangler.adjust(Inputs.CompileCommand.CommandLine);
|
||||
Inputs.CompileCommand.Filename = FullFilename;
|
||||
Inputs.CompileCommand.Directory = testRoot();
|
||||
Inputs.Contents = Code;
|
||||
|
|
|
@ -10,15 +10,17 @@
|
|||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "clang/Frontend/Utils.h"
|
||||
#include "clang/Basic/DiagnosticOptions.h"
|
||||
#include "clang/Driver/Action.h"
|
||||
#include "clang/Driver/Compilation.h"
|
||||
#include "clang/Driver/Driver.h"
|
||||
#include "clang/Driver/Action.h"
|
||||
#include "clang/Driver/Options.h"
|
||||
#include "clang/Driver/Tool.h"
|
||||
#include "clang/Frontend/CompilerInstance.h"
|
||||
#include "clang/Frontend/FrontendDiagnostic.h"
|
||||
#include "clang/Frontend/Utils.h"
|
||||
#include "llvm/ADT/STLExtras.h"
|
||||
#include "llvm/ADT/StringRef.h"
|
||||
#include "llvm/Option/ArgList.h"
|
||||
#include "llvm/Support/Host.h"
|
||||
using namespace clang;
|
||||
|
@ -37,7 +39,10 @@ std::unique_ptr<CompilerInvocation> clang::createInvocationFromCommandLine(
|
|||
SmallVector<const char *, 16> Args(ArgList.begin(), ArgList.end());
|
||||
|
||||
// FIXME: Find a cleaner way to force the driver into restricted modes.
|
||||
Args.push_back("-fsyntax-only");
|
||||
Args.insert(
|
||||
llvm::find_if(
|
||||
Args, [](const char *Elem) { return llvm::StringRef(Elem) == "--"; }),
|
||||
"-fsyntax-only");
|
||||
|
||||
// FIXME: We shouldn't have to pass in the path info.
|
||||
driver::Driver TheDriver(Args[0], llvm::sys::getDefaultTargetTriple(), *Diags,
|
||||
|
|
Loading…
Reference in New Issue