From 0c009c7d8d43106ff8c56f63b0accc5d7c4bbf34 Mon Sep 17 00:00:00 2001 From: "Lori A. Burns" Date: Tue, 17 Apr 2018 13:28:04 -0400 Subject: [PATCH] Enforces intel icpc >= 2017, fixes #1121 --- README.md | 2 +- docs/changelog.rst | 4 ++++ docs/intro.rst | 2 +- include/pybind11/detail/common.h | 4 ++-- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 04568aced8..dbebf0a8a0 100644 --- a/README.md +++ b/README.md @@ -98,7 +98,7 @@ In addition to the core functionality, pybind11 provides some extra goodies: 1. Clang/LLVM 3.3 or newer (for Apple Xcode's clang, this is 5.0.0 or newer) 2. GCC 4.8 or newer 3. Microsoft Visual Studio 2015 Update 3 or newer -4. Intel C++ compiler 16 or newer (15 with a [workaround](https://github.com/pybind/pybind11/issues/276)) +4. Intel C++ compiler 17 or newer (16 with pybind11 v2.0 and 15 with pybind11 v2.0 and a [workaround](https://github.com/pybind/pybind11/issues/276)) 5. Cygwin/GCC (tested on 2.5.1) ## About diff --git a/docs/changelog.rst b/docs/changelog.rst index 2397056eb5..2d9b452cc1 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -21,6 +21,10 @@ v2.3.0 (Not yet released) * The ``value()`` method of ``py::enum_`` now accepts an optional docstring that will be shown in the documentation of the associated enumeration. +* Intel compilers have needed to be >= 17.0 since v2.1. Now the check + is explicit and a compile-time error is raised if the compiler does + not meet the requirements. + v2.2.2 (February 7, 2018) ----------------------------------------------------- diff --git a/docs/intro.rst b/docs/intro.rst index 3e9420ec82..118cb504c4 100644 --- a/docs/intro.rst +++ b/docs/intro.rst @@ -91,4 +91,4 @@ Supported compilers 1. Clang/LLVM (any non-ancient version with C++11 support) 2. GCC 4.8 or newer 3. Microsoft Visual Studio 2015 or newer -4. Intel C++ compiler v15 or newer +4. Intel C++ compiler v17 or newer (v16 with pybind11 v2.0 and v15 with pybind11 v2.0 and a `workaround `_ ) diff --git a/include/pybind11/detail/common.h b/include/pybind11/detail/common.h index a291ecf6c5..3c6722891d 100644 --- a/include/pybind11/detail/common.h +++ b/include/pybind11/detail/common.h @@ -46,8 +46,8 @@ // Compiler version assertions #if defined(__INTEL_COMPILER) -# if __INTEL_COMPILER < 1500 -# error pybind11 requires Intel C++ compiler v15 or newer +# if __INTEL_COMPILER < 1700 +# error pybind11 requires Intel C++ compiler v17 or newer # endif #elif defined(__clang__) && !defined(__apple_build_version__) # if __clang_major__ < 3 || (__clang_major__ == 3 && __clang_minor__ < 3)