diff options
Diffstat (limited to 'examples/clang-interpreter')
-rw-r--r-- | examples/clang-interpreter/CMakeLists.txt | 1 | ||||
-rw-r--r-- | examples/clang-interpreter/main.cpp | 20 |
2 files changed, 10 insertions, 11 deletions
diff --git a/examples/clang-interpreter/CMakeLists.txt b/examples/clang-interpreter/CMakeLists.txt index 06d3d03..451b4b8 100644 --- a/examples/clang-interpreter/CMakeLists.txt +++ b/examples/clang-interpreter/CMakeLists.txt @@ -5,6 +5,7 @@ set(LLVM_LINK_COMPONENTS asmparser bitreader bitwriter + irreader codegen ipo linker diff --git a/examples/clang-interpreter/main.cpp b/examples/clang-interpreter/main.cpp index 84e4c71..3d0d640 100644 --- a/examples/clang-interpreter/main.cpp +++ b/examples/clang-interpreter/main.cpp @@ -8,25 +8,24 @@ //===----------------------------------------------------------------------===// #include "clang/CodeGen/CodeGenAction.h" +#include "clang/Basic/DiagnosticOptions.h" #include "clang/Driver/Compilation.h" #include "clang/Driver/Driver.h" #include "clang/Driver/Tool.h" -#include "clang/Frontend/CompilerInvocation.h" #include "clang/Frontend/CompilerInstance.h" +#include "clang/Frontend/CompilerInvocation.h" #include "clang/Frontend/FrontendDiagnostic.h" #include "clang/Frontend/TextDiagnosticPrinter.h" -#include "clang/Basic/DiagnosticOptions.h" - -#include "llvm/Module.h" #include "llvm/ADT/OwningPtr.h" #include "llvm/ADT/SmallString.h" -#include "llvm/ExecutionEngine/JIT.h" #include "llvm/ExecutionEngine/ExecutionEngine.h" -#include "llvm/Support/ManagedStatic.h" -#include "llvm/Support/raw_ostream.h" +#include "llvm/ExecutionEngine/JIT.h" +#include "llvm/IR/Module.h" #include "llvm/Support/Host.h" +#include "llvm/Support/ManagedStatic.h" #include "llvm/Support/Path.h" #include "llvm/Support/TargetSelect.h" +#include "llvm/Support/raw_ostream.h" using namespace clang; using namespace clang::driver; @@ -75,14 +74,13 @@ int main(int argc, const char **argv, char * const *envp) { IntrusiveRefCntPtr<DiagnosticIDs> DiagID(new DiagnosticIDs()); DiagnosticsEngine Diags(DiagID, &*DiagOpts, DiagClient); - Driver TheDriver(Path.str(), llvm::sys::getDefaultTargetTriple(), - "a.out", /*IsProduction=*/false, Diags); + Driver TheDriver(Path.str(), llvm::sys::getProcessTriple(), "a.out", Diags); TheDriver.setTitle("clang interpreter"); // FIXME: This is a hack to try to force the driver to do something we can // recognize. We need to extend the driver library to support this use model // (basically, exactly one input, and the operation mode is hard wired). - llvm::SmallVector<const char *, 16> Args(argv, argv + argc); + SmallVector<const char *, 16> Args(argv, argv + argc); Args.push_back("-fsyntax-only"); OwningPtr<Compilation> C(TheDriver.BuildCompilation(Args)); if (!C) @@ -130,7 +128,7 @@ int main(int argc, const char **argv, char * const *envp) { Clang.setInvocation(CI.take()); // Create the compilers actual diagnostics engine. - Clang.createDiagnostics(int(CCArgs.size()),const_cast<char**>(CCArgs.data())); + Clang.createDiagnostics(); if (!Clang.hasDiagnostics()) return 1; |