diff --git a/CMakeLists.txt b/CMakeLists.txt
index 61df6e0e..5d98a9cb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -80,8 +80,8 @@ find_package(LLVM REQUIRED CONFIG)
message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}")
message(STATUS "Using LLVMConfig.cmake from ${LLVM_DIR}")
-if (${LLVM_VERSION_MAJOR} LESS 8 OR ${LLVM_VERSION_MAJOR} GREATER 16)
- message(WARNING "The software has been developed for LLVM 8 through 16; \
+if (${LLVM_VERSION_MAJOR} LESS 8 OR ${LLVM_VERSION_MAJOR} GREATER 17)
+ message(WARNING "The software has been developed for LLVM 8 through 17; \
it is unlikely to work with other versions!")
endif()
diff --git a/README.md b/README.md
index a15eea18..9f5837dc 100644
--- a/README.md
+++ b/README.md
@@ -16,7 +16,7 @@ program. The actual computation happens through calls to the support library at
run time.
To build the pass and the support library, install LLVM (any version between 8
-and 16) and Z3 (version 4.5 or later), as well as a C++ compiler with support
+and 17) and Z3 (version 4.5 or later), as well as a C++ compiler with support
for C++17. LLVM lit is only needed to run the tests; if it's not packaged with
your LLVM, you can get it with `pip install lit`.
diff --git a/compiler/Main.cpp b/compiler/Main.cpp
index 6e0f8512..8ee89055 100644
--- a/compiler/Main.cpp
+++ b/compiler/Main.cpp
@@ -13,7 +13,9 @@
// SymCC. If not, see .
#include
-#include
+#if LLVM_VERSION_MAJOR <= 15
+ #include
+#endif
#include
#include