From 2806d1c00a72f093714ba9187ee1a0e463058ec2 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Wed, 15 Jul 2015 13:35:28 -0700 Subject: Also disable constexpr support in ICC with MSVC before MSVC2015 Because the MS standard library headers won't have the necessary constexpr markings, some types that should be literal (like std::atomic) aren't and some functions that should be constexpr (like std::numeric_limits:max()) aren't. Change-Id: Ib306f8f647014b399b87ffff13f1c74093b11af1 Reviewed-by: Olivier Goffart (Woboq GmbH) --- src/corelib/global/qcompilerdetection.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/corelib/global/qcompilerdetection.h b/src/corelib/global/qcompilerdetection.h index c582b1f238..7ef2741746 100644 --- a/src/corelib/global/qcompilerdetection.h +++ b/src/corelib/global/qcompilerdetection.h @@ -572,6 +572,9 @@ # if _MSC_VER < 1900 // ICC disables unicode string support when compatibility mode with MSVC 2013 or lower is active # undef Q_COMPILER_UNICODE_STRINGS +// Disable constexpr unless the MS headers have constexpr in all the right places too +// (like std::numeric_limits::max()) +# undef Q_COMPILER_CONSTEXPR # endif # endif # endif -- cgit v1.2.3