*/
CV_EXPORTS void error(int _code, const String& _err, const char* _func, const char* _file, int _line);
-#ifdef __GNUC__
+#if defined(__clang__) && defined(_MSC_VER) // MSVC-Clang
+# pragma clang diagnostic push
+# pragma clang diagnostic ignored "-Winvalid-noreturn"
+#elif defined(__GNUC__)
# if defined __clang__ || defined __APPLE__
# pragma GCC diagnostic push
# pragma GCC diagnostic ignored "-Winvalid-noreturn"
# endif
#endif
}
-#ifdef __GNUC__
+
+#if defined(__clang__) && defined(_MSC_VER) // MSVC-Clang
+# pragma clang diagnostic pop
+#elif defined(__GNUC__)
# if defined __clang__ || defined __APPLE__
# pragma GCC diagnostic pop
# endif