Browse Source

Fix internal compiler error in GCC on x86

Max Bruckner 8 years ago
parent
commit
2f65e80a34
1 changed files with 8 additions and 0 deletions
  1. 8 0
      tests/CMakeLists.txt

+ 8 - 0
tests/CMakeLists.txt

@@ -17,6 +17,14 @@ if(ENABLE_CJSON_TEST)
             target_compile_options(unity PRIVATE "-fvisibility=default")
         endif()
     endif()
+    # Disable -fsanitize=float-divide-by-zero for Unity (GCC bug on x86 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80097)
+    if (FLAG_SUPPORTED_fsanitizefloatdividebyzero AND (CMAKE_C_COMPILER_ID STREQUAL "GNU"))
+        if ("${CMAKE_VERSION}" VERSION_LESS "2.8.12")
+            set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-sanitize=float-divide-by-zero")
+        else()
+            target_compile_options(unity PRIVATE "-fno-sanitize=float-divide-by-zero")
+        endif()
+    endif()
 
     #copy test files
     file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/inputs")