[Openmp-commits] [PATCH] D65871: [OpenMP] Enable warning about "implicit fallthrough"

Jonas Hahnfeld via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Wed Aug 7 06:41:04 PDT 2019


Hahnfeld created this revision.
Hahnfeld added reviewers: jdoerfert, protze.joachim.
Herald added subscribers: openmp-commits, guansong, mgorny.
Herald added a project: OpenMP.

Fix last warned location in ittnotify_static.cpp using the defined
macro KMP_FALLTHROUGH().


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D65871

Files:
  openmp/cmake/HandleOpenMPOptions.cmake
  openmp/cmake/config-ix.cmake
  openmp/runtime/cmake/LibompHandleFlags.cmake
  openmp/runtime/cmake/config-ix.cmake
  openmp/runtime/src/thirdparty/ittnotify/ittnotify_static.cpp


Index: openmp/runtime/src/thirdparty/ittnotify/ittnotify_static.cpp
===================================================================
--- openmp/runtime/src/thirdparty/ittnotify/ittnotify_static.cpp
+++ openmp/runtime/src/thirdparty/ittnotify/ittnotify_static.cpp
@@ -8,6 +8,7 @@
 //===----------------------------------------------------------------------===//
 
 #include "kmp_config.h"
+#include "kmp_os.h"
 #include "ittnotify_config.h"
 
 #if ITT_PLATFORM==ITT_PLATFORM_WIN
@@ -1098,6 +1099,7 @@
                         switch (lib_version) {
                         case 0:
                             groups = __itt_group_legacy;
+                            KMP_FALLTHROUGH();
                         case 1:
                             /* Fill all pointers from dynamic library */
                             for (i = 0; _N_(_ittapi_global).api_list_ptr[i].name != NULL; i++)
Index: openmp/runtime/cmake/config-ix.cmake
===================================================================
--- openmp/runtime/cmake/config-ix.cmake
+++ openmp/runtime/cmake/config-ix.cmake
@@ -51,7 +51,6 @@
 check_cxx_compiler_flag(-Wno-class-memaccess LIBOMP_HAVE_WNO_CLASS_MEMACCESS_FLAG)
 check_cxx_compiler_flag(-Wno-covered-switch-default LIBOMP_HAVE_WNO_COVERED_SWITCH_DEFAULT_FLAG)
 check_cxx_compiler_flag(-Wno-frame-address LIBOMP_HAVE_WNO_FRAME_ADDRESS_FLAG)
-check_cxx_compiler_flag(-Wno-implicit-fallthrough LIBOMP_HAVE_WNO_IMPLICIT_FALLTHROUGH_FLAG)
 check_cxx_compiler_flag(-Wno-strict-aliasing LIBOMP_HAVE_WNO_STRICT_ALIASING_FLAG)
 check_cxx_compiler_flag(-Wstringop-overflow=0 LIBOMP_HAVE_WSTRINGOP_OVERFLOW_FLAG)
 check_cxx_compiler_flag(-Wno-stringop-truncation LIBOMP_HAVE_WNO_STRINGOP_TRUNCATION_FLAG)
Index: openmp/runtime/cmake/LibompHandleFlags.cmake
===================================================================
--- openmp/runtime/cmake/LibompHandleFlags.cmake
+++ openmp/runtime/cmake/LibompHandleFlags.cmake
@@ -30,7 +30,6 @@
   libomp_append(flags_local -Wno-class-memaccess LIBOMP_HAVE_WNO_CLASS_MEMACCESS_FLAG)
   libomp_append(flags_local -Wno-covered-switch-default LIBOMP_HAVE_WNO_COVERED_SWITCH_DEFAULT_FLAG)
   libomp_append(flags_local -Wno-frame-address LIBOMP_HAVE_WNO_FRAME_ADDRESS_FLAG)
-  libomp_append(flags_local -Wno-implicit-fallthrough LIBOMP_HAVE_WNO_IMPLICIT_FALLTHROUGH_FLAG)
   libomp_append(flags_local -Wno-strict-aliasing LIBOMP_HAVE_WNO_STRICT_ALIASING_FLAG)
   libomp_append(flags_local -Wstringop-overflow=0 LIBOMP_HAVE_WSTRINGOP_OVERFLOW_FLAG)
   libomp_append(flags_local -Wno-stringop-truncation LIBOMP_HAVE_WNO_STRINGOP_TRUNCATION_FLAG)
Index: openmp/cmake/config-ix.cmake
===================================================================
--- openmp/cmake/config-ix.cmake
+++ openmp/cmake/config-ix.cmake
@@ -7,6 +7,7 @@
 # Additional warnings that are not enabled by -Wall.
 check_cxx_compiler_flag(-Wcast-qual OPENMP_HAVE_WCAST_QUAL_FLAG)
 check_c_compiler_flag(-Wformat-pedantic OPENMP_HAVE_WFORMAT_PEDANTIC_FLAG)
+check_c_compiler_flag(-Wimplicit-fallthrough OPENMP_HAVE_WIMPLICIT_FALLTHROUGH_FLAG)
 check_c_compiler_flag(-Wsign-compare OPENMP_HAVE_WSIGN_COMPARE_FLAG)
 
 # Warnings that we want to disable because they are too verbose or fragile.
Index: openmp/cmake/HandleOpenMPOptions.cmake
===================================================================
--- openmp/cmake/HandleOpenMPOptions.cmake
+++ openmp/cmake/HandleOpenMPOptions.cmake
@@ -21,6 +21,7 @@
 # Additional warnings that are not enabled by -Wall.
 append_if(OPENMP_HAVE_WCAST_QUAL_FLAG "-Wcast-qual" CMAKE_CXX_FLAGS)
 append_if(OPENMP_HAVE_WFORMAT_PEDANTIC_FLAG "-Wformat-pedantic" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
+append_if(OPENMP_HAVE_WIMPLICIT_FALLTHROUGH_FLAG "-Wimplicit-fallthrough" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
 append_if(OPENMP_HAVE_WSIGN_COMPARE_FLAG "-Wsign-compare" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)
 
 # Warnings that we want to disable because they are too verbose or fragile.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D65871.213869.patch
Type: text/x-patch
Size: 3931 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20190807/224a317c/attachment.bin>


More information about the Openmp-commits mailing list