Skip to content

Commit f41275d

Browse files
Disable concepts in libcxxmsvc for MSVC toolsets >= 14.29.x as well.. #2302
8f4800b43ba453e815c1148a0197c819a13763ca
1 parent 89f880c commit f41275d

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

contrib/libs/cxxsupp/libcxxmsvc/include/__config

+2-1
Original file line numberDiff line numberDiff line change
@@ -908,7 +908,8 @@ typedef unsigned int char32_t;
908908
# define _LIBCPP_CONSTEVAL consteval
909909
#endif
910910

911-
#if _LIBCPP_STD_VER <= 17 || !defined(__cpp_concepts) || __cpp_concepts < 201907L
911+
// Even modern versions of MSVC toolkit have issues compiling libc++'s concepts-related code
912+
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_COMPILER_MSVC) || !defined(__cpp_concepts) || __cpp_concepts < 201907L
912913
#define _LIBCPP_HAS_NO_CONCEPTS
913914
#endif
914915

contrib/libs/tbb/include/oneapi/tbb/detail/_config.h

+6-1
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,12 @@
243243
#elif _MSC_VER
244244
#define __TBB_CPP14_VARIABLE_TEMPLATES_PRESENT (_MSC_FULL_VER >= 190023918 && (!__INTEL_COMPILER || __INTEL_COMPILER >= 1700))
245245
#define __TBB_CPP17_DEDUCTION_GUIDES_PRESENT (_MSC_VER >= 1914 && __TBB_LANG >= 201703L && (!__INTEL_COMPILER || __INTEL_COMPILER > 2021))
246-
#define __TBB_CPP20_CONCEPTS_PRESENT (_MSC_VER >= 1923 && __TBB_LANG >= 202002L) // TODO: INTEL_COMPILER?
246+
#if !defined(__cpp_lib_concepts)
247+
// TBB's concepts use STL's concepts
248+
#define __TBB_CPP20_CONCEPTS_PRESENT 0
249+
#else
250+
#define __TBB_CPP20_CONCEPTS_PRESENT (_MSC_VER >= 1923 && __TBB_LANG >= 202002L) // TODO: INTEL_COMPILER?
251+
#endif
247252
#else
248253
#define __TBB_CPP14_VARIABLE_TEMPLATES_PRESENT (__TBB_LANG >= 201402L)
249254
#define __TBB_CPP17_DEDUCTION_GUIDES_PRESENT (__TBB_LANG >= 201703L)

0 commit comments

Comments
 (0)