From c6fd7423f2db1e33c76f15ab4ff85d669f73900f Mon Sep 17 00:00:00 2001 From: TimQu Date: Mon, 20 Jul 2020 10:13:18 +0200 Subject: [PATCH] Disabling stack checks once again for all clang versions >= 11.0.0 because they somehow interfere with exception handling in the PrismParser. (most likely a clang bug). --- CMakeLists.txt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 751e5a7e0..0a88333f6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -194,9 +194,11 @@ elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang") # using AppleClang if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.3) message(FATAL_ERROR "AppleClang version must be at least 7.3.") - elseif ((CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 11.0.0) OR ((CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 11.0.0) AND (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 11.0.3))) - message(WARNING "Disabling stack checks for AppleClang versions between 11.0.0 and 11.0.2.") - # With these compiler versions, stack checks fail in release mode (most likely due to a bug in these versions). + elseif ((CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 11.0.0) OR (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 11.0.0)) + message(WARNING "Disabling stack checks for AppleClang version 11.0.0 or higher.") + # Stack checks are known to produce errors with the following Clang versions: + # 11.0.0: Runtime errors (stack_not_16_byte_aligned_error) when invoking storm in release mode + # 11.0.3: Catching exceptions thrown within PRISM parser does not work (The exception just falls through) set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fno-stack-check") endif()