Comments (5)
Apologies for this not being the most dug-into issue, however I thought it was worth writing up in case other people hit this issue ...
Don't apologize!
I have a build of
clang-10
from the following commit: llvm/llvm-project@2e95941,
That would be the problem as it' a commit quite soon at the beginning of LLVM 10.0 development, but it's far from LLVM 10.0.0 release which contains all the stuff that you see it error report.
Please update either to LLVM 9.0.1
or 10.0.0
release.
which is a build that works correctly against csmith-project/creduce@d83cbda (from April 20th, 2020).
However, it seems that this build of
clang
isn't compatible withcvise
.After
C=clang CXX=clang++ cmake -DENABLE_TRANS_ASSERT=OFF ..
:
from cvise.
I messed around with things a bit, and now TransformationManager.cpp
compiles:
diff --git a/clang_delta/TransformationManager.cpp b/clang_delta/TransformationManager.cpp
index 501e77f..2f9802b 100644
--- a/clang_delta/TransformationManager.cpp
+++ b/clang_delta/TransformationManager.cpp
@@ -113,10 +113,10 @@ bool TransformationManager::initializeCompilerInstance(std::string &ErrorMsg)
else if (!CXXStandard.compare("c++17"))
LSTD = LangStandard::Kind::lang_cxx17;
else if (!CXXStandard.compare("c++20"))
-#if LLVM_VERSION_MAJOR < 10
+#if LLVM_VERSION_MAJOR < 11
LSTD = LangStandard::Kind::lang_cxx2a;
#else
- LSTD = LangStandard::Kind::lang_cxx20;
+ LSTD = LangStandard::Kind::lang_cxx2a;
#endif
else {
ErrorMsg = "Can't parse CXXStandard option argument!";
@@ -124,7 +124,7 @@ bool TransformationManager::initializeCompilerInstance(std::string &ErrorMsg)
}
}
-#if LLVM_VERSION_MAJOR < 10
+#if LLVM_VERSION_MAJOR < 11
if (IK.getLanguage() == InputKind::C) {
Invocation.setLangDefaults(ClangInstance->getLangOpts(), InputKind::C, T, PPOpts);
}
@@ -168,14 +168,14 @@ bool TransformationManager::initializeCompilerInstance(std::string &ErrorMsg)
Args.push_back("-fno-builtin");
CompilerInvocation::CreateFromArgs(Invocation,
-#if LLVM_VERSION_MAJOR >= 10
+#if LLVM_VERSION_MAJOR >= 11
Args,
#else
&Args[0], &Args[0] + Args.size(),
#endif
ClangInstance->getDiagnostics());
Invocation.setLangDefaults(ClangInstance->getLangOpts(),
-#if LLVM_VERSION_MAJOR >= 10
+#if LLVM_VERSION_MAJOR >= 11
InputKind(Language::OpenCL),
#else
InputKind::OpenCL,
from cvise.
Builds after making this change ...
from cvise.
That's what I thought -- thanks for taking look!
from cvise.
You're welcome.
from cvise.
Related Issues (20)
- Error in ExpressionDetector.cpp when building HOT 1
- Build failure with recent trunk: possibly dangling reference to a temporary HOT 1
- UnIfDefPass has encountered a bug: pass error state: 44 HOT 3
- IfPass has encountered a bug: pass error state: BinaryState: 0-10993 of 10993 instances HOT 6
- ClangBinarySearchPass::replace-function-def-with-decl has encountered a bug: pass error state: BinaryState: 0-1350 of 2701 instances HOT 1
- ClexPass::rm-toks-1 has encountered a bug: pass got stuck state: 50000 HOT 5
- Infinite loop in clang_delta replace-function-def-with-decl HOT 19
- error: no type named 'Designator' in 'clang::DesignatedInitExpr' HOT 1
- RFC for improvement: (1) add support for GCC compilation. (2) This may be a red herring, but we may want to eliminate lines from the end, NOT fromt he begining. HOT 8
- Allow folders/directories in test cases HOT 8
- New release for LLVM 16 support? HOT 3
- remove-unused-outer-class is very restrictive on what it removes HOT 1
- cvise stops intermittently HOT 7
- Parallelism doesn't do much HOT 9
- When are shortcuts taken into account? HOT 3
- clang_delta: […] clang::Expr::ClassifyImpl(…) const: Assertion `isLValue()' failed. HOT 15
- cvise: running only the "light" transformations HOT 2
- ability to use /bin/sh for --commands HOT 2
- Release new version HOT 1
- Understanding C-Vise Performance with multiple cores and Comparison with C-Reduce HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cvise.