-- The CXX compiler identification is GNU 9.2.1
-- Check for working CXX compiler: /usr/lib64/ccache/c++
-- Check for working CXX compiler: /usr/lib64/ccache/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found LLVM 8.0.0
-- Using LLVMConfig.cmake in: /usr/lib64/cmake/llvm
-- Configuring done
-- Generating done
-- Build files have been written to: /home/simon/src/constexpr-everything/build
[1/2] Building CXX object CMakeFiles/constexpr-everything.dir/main.cpp.o
FAILED: CMakeFiles/constexpr-everything.dir/main.cpp.o
/usr/lib64/ccache/c++ -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -std=c++14 -Wno-unused-parameter -Wall -Wextra -Wshadow -fno-strict-aliasing -fno-exceptions -fno-rtti -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -std=gnu++14 -MD -MT CMakeFiles/constexpr-everything.dir/main.cpp.o -MF CMakeFiles/constexpr-everything.dir/main.cpp.o.d -o CMakeFiles/constexpr-everything.dir/main.cpp.o -c ../main.cpp
../main.cpp: In member function ‘bool ConstexprFunctionASTVisitor::VisitFunctionDecl(clang::FunctionDecl*)’:
../main.cpp:233:11: error: ‘class clang::FunctionDecl’ has no member named ‘setConstexprKind’; did you mean ‘setConstexpr’?
233 | func->setConstexprKind(CSK_constexpr);
| ^~~~~~~~~~~~~~~~
| setConstexpr
../main.cpp:233:28: error: ‘CSK_constexpr’ was not declared in this scope; did you mean ‘constexpr’?
233 | func->setConstexprKind(CSK_constexpr);
| ^~~~~~~~~~~~~
| constexpr
../main.cpp: In member function ‘bool ConstexprVarDeclFunctionASTVisitor::ConstexprVarDeclVisitor::VisitDeclStmt(clang::DeclStmt*)’:
../main.cpp:279:13: warning: unused variable ‘sema’ [-Wunused-variable]
279 | auto &sema = CI_.getSema();
| ^~~~
../main.cpp: At global scope:
../main.cpp:40:6: warning: ‘bool {anonymous}::CheckConstexprDeclStmt(clang::Sema&, const clang::FunctionDecl*, clang::DeclStmt*, clang::SourceLocation&)’ defined but not used [-Wunused-function]
40 | bool CheckConstexprDeclStmt(Sema &SemaRef, const FunctionDecl *Dcl,
| ^~~~~~~~~~~~~~~~~~~~~~
ninja: build stopped: subcommand failed.
I guess a newer LLVM version is required. Maybe a version check could be added to the CMakeLists.txt
or at least the required LLVM version should be stated in the README.