% ~/build/lab/llpe-git/src/llpe/llpe CC=clang CXX=clang++ cmake .
-- The C compiler identification is Clang 3.7.0
-- The CXX compiler identification is Clang 3.7.0
-- Check for working C compiler: /usr/bin/clang
-- Check for working C compiler: /usr/bin/clang -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/clang++
-- Check for working CXX compiler: /usr/bin/clang++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found OpenSSL: /usr/lib64/libssl.so;/usr/lib64/libcrypto.so (found version "1.0.2d")
-- Found wxWidgets: TRUE
-- Configuring done
-- Generating done
-- Build files have been written to: /home/earnest/build/lab/llpe-git/src/llpe/llpe
% ~/build/lab/llpe-git/src/llpe/llpe make
Scanning dependencies of target LLVMLLPEMain
[ 2%] Building CXX object main/CMakeFiles/LLVMLLPEMain.dir/ArgSpec.cpp.o
In file included from /home/earnest/build/lab/llpe-git/src/llpe/llpe/main/ArgSpec.cpp:16:
/home/earnest/build/lab/llpe-git/src/llpe/llpe/include/llvm/Analysis/LLPE.h:403:7: error: deleted function '~LLPEAnalysisPass' cannot override a non-deleted function
class LLPEAnalysisPass : public ModulePass {
^
/usr/include/llvm/Pass.h:253:3: note: overridden virtual function is here
~ModulePass() override;
^
In file included from /home/earnest/build/lab/llpe-git/src/llpe/llpe/main/ArgSpec.cpp:16:
/home/earnest/build/lab/llpe-git/src/llpe/llpe/include/llvm/Analysis/LLPE.h:535:13: error: constructor for 'llvm::LLPEAnalysisPass' must explicitly initialize the member
'fakeDebugType' which does not have a default constructor
explicit LLPEAnalysisPass() : ModulePass(ID), cacheDisabled(false) {
^
/home/earnest/build/lab/llpe-git/src/llpe/llpe/include/llvm/Analysis/LLPE.h:533:20: note: member is declared here
DICompositeType fakeDebugType;
^
/usr/include/llvm/IR/DebugInfoMetadata.h:838:7: note: 'llvm::DICompositeType' declared here
class DICompositeType : public DICompositeTypeBase {
^
In file included from /home/earnest/build/lab/llpe-git/src/llpe/llpe/main/ArgSpec.cpp:16:
/home/earnest/build/lab/llpe-git/src/llpe/llpe/include/llvm/Analysis/LLPE.h:533:20: error: field of type 'llvm::DICompositeType' has private destructor
DICompositeType fakeDebugType;
^
/usr/include/llvm/IR/DebugInfoMetadata.h:849:3: note: implicitly declared private here
~DICompositeType() = default;
^
/home/earnest/build/lab/llpe-git/src/llpe/llpe/main/ArgSpec.cpp:72:31: error: no matching function for call to 'getGetElementPtr'
lineStartConsts.push_back(ConstantExpr::getGetElementPtr(EnvInitG, gepArgs, 2));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/llvm/IR/Constants.h:1092:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C,
^
/usr/include/llvm/IR/Constants.h:1100:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C, Constant *Idx,
^
/usr/include/llvm/IR/Constants.h:1108:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C,
^
/home/earnest/build/lab/llpe-git/src/llpe/llpe/main/ArgSpec.cpp:84:26: error: no matching function for call to 'getGetElementPtr'
Constant* EnvPtrsPtr = ConstantExpr::getGetElementPtr(EnvPtrsG, gepArgs, 2);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/llvm/IR/Constants.h:1092:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C,
^
/usr/include/llvm/IR/Constants.h:1100:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C, Constant *Idx,
^
/usr/include/llvm/IR/Constants.h:1108:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C,
^
/home/earnest/build/lab/llpe-git/src/llpe/llpe/main/ArgSpec.cpp:156:29: error: no matching function for call to 'getGetElementPtr'
Constant* stringPtr = ConstantExpr::getGetElementPtr(ArgvConsts, gepArgs, 2);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/llvm/IR/Constants.h:1092:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C,
^
/usr/include/llvm/IR/Constants.h:1100:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C, Constant *Idx,
^
/usr/include/llvm/IR/Constants.h:1108:20: note: candidate function not viable: no known conversion from 'llvm::GlobalVariable *' to 'llvm::Type *' for 1st argument
static Constant *getGetElementPtr(Type *Ty, Constant *C,
^
/home/earnest/build/lab/llpe-git/src/llpe/llpe/main/ArgSpec.cpp:160:30: error: no matching function for call to 'Create'
Instruction* argvPtr = GetElementPtrInst::Create(Arg, gepArg, "argv_ptr", InsertBefore);
^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/llvm/IR/Instructions.h:854:29: note: candidate function not viable: no known conversion from 'Function::arg_iterator' (aka 'ilist_iterator<llvm::Argument>')
to 'llvm::Type *' for 1st argument
static GetElementPtrInst *Create(Type *PointeeType, Value *Ptr,
^
/usr/include/llvm/IR/Instructions.h:869:29: note: candidate function not viable: requires 5 arguments, but 4 were provided
static GetElementPtrInst *Create(Type *PointeeType, Value *Ptr,
^
/home/earnest/build/lab/llpe-git/src/llpe/llpe/main/ArgSpec.cpp:169:29: error: no matching function for call to 'Create'
Instruction* argvEndPtr = GetElementPtrInst::Create(Arg, gepArg, "argv_end_ptr", InsertBefore);
^~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/llvm/IR/Instructions.h:854:29: note: candidate function not viable: no known conversion from 'Function::arg_iterator' (aka 'ilist_iterator<llvm::Argument>')
to 'llvm::Type *' for 1st argument
static GetElementPtrInst *Create(Type *PointeeType, Value *Ptr,
^
/usr/include/llvm/IR/Instructions.h:869:29: note: candidate function not viable: requires 5 arguments, but 4 were provided
static GetElementPtrInst *Create(Type *PointeeType, Value *Ptr,
^
8 errors generated.
main/CMakeFiles/LLVMLLPEMain.dir/build.make:62: recipe for target 'main/CMakeFiles/LLVMLLPEMain.dir/ArgSpec.cpp.o' failed
make[2]: *** [main/CMakeFiles/LLVMLLPEMain.dir/ArgSpec.cpp.o] Error 1
CMakeFiles/Makefile2:85: recipe for target 'main/CMakeFiles/LLVMLLPEMain.dir/all' failed
make[1]: *** [main/CMakeFiles/LLVMLLPEMain.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2