From 44a38ba6f54046cb4a9f8b08a0b8711ad5d5ebaa Mon Sep 17 00:00:00 2001 From: Martin Nowack Date: Mon, 30 Oct 2023 14:26:01 +0000 Subject: Explicitly enable opaque pointer support for LLVM 15 This automatically lifts old-style pointers to opaque pointers. More recent versions use opaque pointers automatically and do not need an explicit enabling. --- tools/klee/main.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'tools') diff --git a/tools/klee/main.cpp b/tools/klee/main.cpp index febeb47f..18e67fe6 100644 --- a/tools/klee/main.cpp +++ b/tools/klee/main.cpp @@ -1201,6 +1201,10 @@ int main(int argc, char **argv, char **envp) { // Load the bytecode... std::string errorMsg; LLVMContext ctx; +#if LLVM_VERSION_CODE == LLVM_VERSION(15, 0) + // We have to force the upgrade to opaque pointer explicitly for LLVM 15. + ctx.setOpaquePointers(true); +#endif std::vector> loadedModules; if (!klee::loadFile(InputFile, ctx, loadedModules, errorMsg)) { klee_error("error loading program '%s': %s", InputFile.c_str(), -- cgit 1.4.1