[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[creduce-dev] Patch for building with llvm-svn trunk
The following patch fixes a build failure with with llvm trunk:
diff --git a/clang_delta/TransformationManager.cpp b/clang_delta/TransformationManager.cpp
index 51e3f4a24536..dea86557efdf 100644
--- a/clang_delta/TransformationManager.cpp
+++ b/clang_delta/TransformationManager.cpp
@@ -85,17 +85,19 @@ bool TransformationManager::initializeCompilerInstance(std::string &ErrorMsg)
ClangInstance->createDiagnostics();
+ TargetOptions &TargetOpts = ClangInstance->getTargetOpts();
+ llvm::Triple T(TargetOpts.Triple);
CompilerInvocation &Invocation = ClangInstance->getInvocation();
InputKind IK = FrontendOptions::getInputKindForExtension(
StringRef(SrcFileName).rsplit('.').second);
if ((IK == IK_C) || (IK == IK_PreprocessedC)) {
- Invocation.setLangDefaults(ClangInstance->getLangOpts(), IK_C);
+ Invocation.setLangDefaults(ClangInstance->getLangOpts(), IK_C, T);
}
else if ((IK == IK_CXX) || (IK == IK_PreprocessedCXX)) {
// ISSUE: it might cause some problems when building AST
// for a function which has a non-declared callee, e.g.,
// It results an empty AST for the caller.
- Invocation.setLangDefaults(ClangInstance->getLangOpts(), IK_CXX);
+ Invocation.setLangDefaults(ClangInstance->getLangOpts(), IK_CXX, T);
}
else if(IK == IK_OpenCL) {
//Commandline parameters
@@ -121,15 +123,13 @@ bool TransformationManager::initializeCompilerInstance(std::string &ErrorMsg)
CompilerInvocation::CreateFromArgs(Invocation,
&Args[0], &Args[0] + Args.size(),
ClangInstance->getDiagnostics());
- Invocation.setLangDefaults(ClangInstance->getLangOpts(), IK_OpenCL);
+ Invocation.setLangDefaults(ClangInstance->getLangOpts(), IK_OpenCL, T);
}
else {
ErrorMsg = "Unsupported file type!";
return false;
}
- TargetOptions &TargetOpts = ClangInstance->getTargetOpts();
-
if (const char *env = getenv("CREDUCE_TARGET_TRIPLE")) {
TargetOpts.Triple = std::string(env);
} else {
--
Markus