From 7160e76d54e7bfbad3f2c5e55cb72e51fa7015b8 Mon Sep 17 00:00:00 2001 From: Matt Borland Date: Fri, 16 Oct 2026 15:43:11 -0400 Subject: [PATCH 1/4] Define __GCC_CONSTRUCTIVE/DESTRUCTIVE_SIZE on macOS [GH #319] --- .../macos-arm/clang/lib/predefined_macros.txt | 2 + .../lib_macos_arm64/predefined_macros.txt | 2 + .../clang/lib/predefined_macros.txt | 2 + .../lib_macos_x86_64/predefined_macros.txt | 2 + .../tests/changes/.GH319.rto/default.1.1.txt | 1 + tests/tests/changes/GH319.sft.cpp | 49 +++++++++++++++++++ 6 files changed, 58 insertions(+) create mode 100644 tests/tests/changes/.GH319.rto/default.1.1.txt create mode 100644 tests/tests/changes/GH319.sft.cpp diff --git a/bases/cmake-native/macos-arm/clang/lib/predefined_macros.txt b/bases/cmake-native/macos-arm/clang/lib/predefined_macros.txt index 142d5612e8..f7f01571e4 100644 --- a/bases/cmake-native/macos-arm/clang/lib/predefined_macros.txt +++ b/bases/cmake-native/macos-arm/clang/lib/predefined_macros.txt @@ -186,6 +186,8 @@ clang no __GCC_ATOMIC_POINTER_LOCK_FREE 2 clang no __GCC_ATOMIC_SHORT_LOCK_FREE 2 clang no __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1 clang no __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2 +clang no __GCC_CONSTRUCTIVE_SIZE 64 +clang no __GCC_DESTRUCTIVE_SIZE 256 clang no __GCC_HAVE_DWARF2_CFI_ASM 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 diff --git a/bases/cmake-native/macos-arm/clang/lib_macos_arm64/predefined_macros.txt b/bases/cmake-native/macos-arm/clang/lib_macos_arm64/predefined_macros.txt index 142d5612e8..f7f01571e4 100644 --- a/bases/cmake-native/macos-arm/clang/lib_macos_arm64/predefined_macros.txt +++ b/bases/cmake-native/macos-arm/clang/lib_macos_arm64/predefined_macros.txt @@ -186,6 +186,8 @@ clang no __GCC_ATOMIC_POINTER_LOCK_FREE 2 clang no __GCC_ATOMIC_SHORT_LOCK_FREE 2 clang no __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1 clang no __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2 +clang no __GCC_CONSTRUCTIVE_SIZE 64 +clang no __GCC_DESTRUCTIVE_SIZE 256 clang no __GCC_HAVE_DWARF2_CFI_ASM 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 diff --git a/bases/cmake-native/macos-x86_64/clang/lib/predefined_macros.txt b/bases/cmake-native/macos-x86_64/clang/lib/predefined_macros.txt index bbdb1e76a2..4fafa38dd4 100644 --- a/bases/cmake-native/macos-x86_64/clang/lib/predefined_macros.txt +++ b/bases/cmake-native/macos-x86_64/clang/lib/predefined_macros.txt @@ -137,6 +137,8 @@ clang no __GCC_ATOMIC_POINTER_LOCK_FREE 2 clang no __GCC_ATOMIC_SHORT_LOCK_FREE 2 clang no __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1 clang no __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2 +clang no __GCC_CONSTRUCTIVE_SIZE 64 +clang no __GCC_DESTRUCTIVE_SIZE 64 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 diff --git a/bases/cmake-native/macos-x86_64/clang/lib_macos_x86_64/predefined_macros.txt b/bases/cmake-native/macos-x86_64/clang/lib_macos_x86_64/predefined_macros.txt index bbdb1e76a2..4fafa38dd4 100644 --- a/bases/cmake-native/macos-x86_64/clang/lib_macos_x86_64/predefined_macros.txt +++ b/bases/cmake-native/macos-x86_64/clang/lib_macos_x86_64/predefined_macros.txt @@ -137,6 +137,8 @@ clang no __GCC_ATOMIC_POINTER_LOCK_FREE 2 clang no __GCC_ATOMIC_SHORT_LOCK_FREE 2 clang no __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1 clang no __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2 +clang no __GCC_CONSTRUCTIVE_SIZE 64 +clang no __GCC_DESTRUCTIVE_SIZE 64 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 diff --git a/tests/tests/changes/.GH319.rto/default.1.1.txt b/tests/tests/changes/.GH319.rto/default.1.1.txt new file mode 100644 index 0000000000..1f9def3e3a --- /dev/null +++ b/tests/tests/changes/.GH319.rto/default.1.1.txt @@ -0,0 +1 @@ +fe_only -DTEST_NUMBER=1 --clang --c++17 Test_name.c diff --git a/tests/tests/changes/GH319.sft.cpp b/tests/tests/changes/GH319.sft.cpp new file mode 100644 index 0000000000..bf08e56b9e --- /dev/null +++ b/tests/tests/changes/GH319.sft.cpp @@ -0,0 +1,49 @@ +//type:fp +//options_all:--clang --c++17 +//remark:[GH #?] The macOS clang bases define __GCC_CONSTRUCTIVE_SIZE and __GCC_DESTRUCTIVE_SIZE +// 10/15/26 [GH #?] +// +// Clang 19 and later predefine __GCC_CONSTRUCTIVE_SIZE and +// __GCC_DESTRUCTIVE_SIZE, and libc++ (<__new/interference_size.h>, reached by +// , , , , ...) uses them unconditionally from +// C++17 on to define std::hardware_constructive_interference_size and +// std::hardware_destructive_interference_size. +// +// The values depend on the target (Apple clang 21 gives 64 and 256 for arm64, +// 64 and 64 for x86_64), so the test checks that the macros are defined and +// usable the way libc++ uses them, not their values. + +#if defined(__APPLE__) && defined(__clang__) + +#ifndef __GCC_DESTRUCTIVE_SIZE +#error "__GCC_DESTRUCTIVE_SIZE is not defined" +#endif +#ifndef __GCC_CONSTRUCTIVE_SIZE +#error "__GCC_CONSTRUCTIVE_SIZE is not defined" +#endif + +typedef decltype(sizeof(0)) size_t; + +// As in libc++'s <__new/interference_size.h>. +inline constexpr size_t hardware_destructive_interference_size = + __GCC_DESTRUCTIVE_SIZE; +inline constexpr size_t hardware_constructive_interference_size = + __GCC_CONSTRUCTIVE_SIZE; + +// Both are positive powers of two, and the destructive size (the one that +// avoids false sharing) is not smaller than the constructive one. +static_assert(hardware_constructive_interference_size > 0 && + (hardware_constructive_interference_size & + (hardware_constructive_interference_size - 1)) == 0, + "constructive size is a power of two"); +static_assert(hardware_destructive_interference_size > 0 && + (hardware_destructive_interference_size & + (hardware_destructive_interference_size - 1)) == 0, + "destructive size is a power of two"); +static_assert(hardware_destructive_interference_size >= + hardware_constructive_interference_size, + "destructive size is not smaller than constructive size"); + +#endif + +int main() { return 0; } From a4e8327c9f1fc796cc3efb4dec30d7008f690a60 Mon Sep 17 00:00:00 2001 From: Matt Borland Date: Fri, 16 Oct 2026 22:51:47 -0400 Subject: [PATCH 2/4] Fix issue number [] --- tests/tests/changes/GH319.sft.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/tests/changes/GH319.sft.cpp b/tests/tests/changes/GH319.sft.cpp index bf08e56b9e..ea53ca357b 100644 --- a/tests/tests/changes/GH319.sft.cpp +++ b/tests/tests/changes/GH319.sft.cpp @@ -1,7 +1,7 @@ //type:fp //options_all:--clang --c++17 -//remark:[GH #?] The macOS clang bases define __GCC_CONSTRUCTIVE_SIZE and __GCC_DESTRUCTIVE_SIZE -// 10/15/26 [GH #?] +//remark:[GH #319] The macOS clang bases define __GCC_CONSTRUCTIVE_SIZE and __GCC_DESTRUCTIVE_SIZE +// 10/15/26 [GH #319] // // Clang 19 and later predefine __GCC_CONSTRUCTIVE_SIZE and // __GCC_DESTRUCTIVE_SIZE, and libc++ (<__new/interference_size.h>, reached by From 2aa4493efa8b9fadb99b868e123c5b7ef9c4f329 Mon Sep 17 00:00:00 2001 From: Matt Borland Date: Mon, 19 Oct 2026 10:35:07 -0400 Subject: [PATCH 3/4] Update the predef macro table generator, and rerun for mac [] --- .../macos-arm/clang/lib/predefined_macros.txt | 92 +++++++++++++++--- .../lib_macos_arm64/predefined_macros.txt | 92 +++++++++++++++--- .../clang/lib/predefined_macros.txt | 97 ++++++++++++++++--- .../lib_macos_x86_64/predefined_macros.txt | 97 ++++++++++++++++--- util/Changes | 22 +++++ util/make_predef_macro_table | 25 +++++ 6 files changed, 377 insertions(+), 48 deletions(-) diff --git a/bases/cmake-native/macos-arm/clang/lib/predefined_macros.txt b/bases/cmake-native/macos-arm/clang/lib/predefined_macros.txt index f7f01571e4..30c1d87f8a 100644 --- a/bases/cmake-native/macos-arm/clang/lib/predefined_macros.txt +++ b/bases/cmake-native/macos-arm/clang/lib/predefined_macros.txt @@ -30,28 +30,55 @@ # the characters until the end of the line are used as the macro value. # # Created by make_predef_macro_table -# Thu Oct 17 16:13:17 EDT 2024 +# Mon Oct 19 10:30:08 EDT 2026 # # C compiler information # command: /usr/bin/clang # -# Apple clang version 15.0.0 (clang-1500.3.9.4) -# Target: arm64-apple-darwin23.4.0 +# Apple clang version 21.0.0 (clang-2100.3.34.2) +# Target: arm64-apple-darwin27.0.0 # Thread model: posix # InstalledDir: /Library/Developer/CommandLineTools/usr/bin # # C++ compiler information # command: /usr/bin/clang # -# Apple clang version 15.0.0 (clang-1500.3.9.4) -# Target: arm64-apple-darwin23.4.0 +# Apple clang version 21.0.0 (clang-2100.3.34.2) +# Target: arm64-apple-darwin27.0.0 # Thread model: posix # InstalledDir: /Library/Developer/CommandLineTools/usr/bin # clang_cpp no __DEPRECATED 1 clang_cpp no __GNUG__ 4 +clang_cpp no __GXX_EXPERIMENTAL_CXX0X__ 1 clang_cpp no __GXX_WEAK__ 1 clang_cpp no __private_extern__ extern +clang no TARGET_IPHONE_SIMULATOR 0 +clang no TARGET_OS_ARROW 1 +clang no TARGET_OS_BRIDGE 0 +clang no TARGET_OS_DRIVERKIT 0 +clang no TARGET_OS_EMBEDDED 0 +clang no TARGET_OS_FIRMWARE 0 +clang no TARGET_OS_IOS 0 +clang no TARGET_OS_IOSMAC 0 +clang no TARGET_OS_IPHONE 0 +clang no TARGET_OS_KERNELKIT 0 +clang no TARGET_OS_LINUX 0 +clang no TARGET_OS_MAC 1 +clang no TARGET_OS_MACCATALYST 0 +clang no TARGET_OS_NANO 0 +clang no TARGET_OS_OSX 1 +clang no TARGET_OS_SIMULATOR 0 +clang no TARGET_OS_TV 0 +clang no TARGET_OS_UEFI 0 +clang no TARGET_OS_UIKITFORMAC 0 +clang no TARGET_OS_UNIX 0 +clang no TARGET_OS_VISION 0 +clang no TARGET_OS_WATCH 0 +clang no TARGET_OS_WIN32 0 +clang no TARGET_OS_WINDOWS 0 +clang no TARGET_OS_XR 0 +clang no _HAS_BUILTIN_AVAILABLE_FEATS 1 clang no _LP64 1 clang no __AARCH64EL__ 1 clang no __AARCH64_CMODEL_SMALL__ 1 @@ -60,9 +87,11 @@ clang no __APPLE_CC__ 6000 clang no __APPLE__ 1 clang no __ARM64_ARCH_8__ 1 clang no __ARM_64BIT_STATE 1 -clang no __ARM_ACLE 200 +clang no __ARM_ACLE 202420 +clang no __ARM_ACLE_VERSION(year,quarter,patch) (100 * (year) + 10 * (quarter) + (patch)) clang no __ARM_ALIGN_MAX_STACK_PWR 4 clang no __ARM_ARCH 8 +clang no __ARM_ARCH_8_2__ 1 clang no __ARM_ARCH_8_3__ 1 clang no __ARM_ARCH_8_4__ 1 clang no __ARM_ARCH_8_5__ 1 @@ -70,6 +99,7 @@ clang no __ARM_ARCH_ISA_A64 1 clang no __ARM_ARCH_PROFILE 'A' clang no __ARM_FEATURE_AES 1 clang no __ARM_FEATURE_ATOMICS 1 +clang no __ARM_FEATURE_BTI 1 clang no __ARM_FEATURE_CLZ 1 clang no __ARM_FEATURE_COMPLEX 1 clang no __ARM_FEATURE_CRC32 1 @@ -86,23 +116,25 @@ clang no __ARM_FEATURE_IDIV 1 clang no __ARM_FEATURE_JCVT 1 clang no __ARM_FEATURE_LDREX 0xF clang no __ARM_FEATURE_NUMERIC_MAXMIN 1 +clang no __ARM_FEATURE_PAUTH 1 clang no __ARM_FEATURE_QRDMX 1 clang no __ARM_FEATURE_RCPC 1 clang no __ARM_FEATURE_SHA2 1 clang no __ARM_FEATURE_SHA3 1 clang no __ARM_FEATURE_SHA512 1 -clang no __ARM_FEATURE_SM3 1 -clang no __ARM_FEATURE_SM4 1 clang no __ARM_FEATURE_UNALIGNED 1 clang no __ARM_FP16_ARGS 1 clang no __ARM_FP16_FORMAT_IEEE 1 clang no __ARM_FP 0xE clang no __ARM_NEON 1 clang no __ARM_NEON_FP 0xE +clang no __ARM_NEON_SVE_BRIDGE 1 clang no __ARM_NEON__ 1 clang no __ARM_PCS_AAPCS64 1 clang no __ARM_SIZEOF_MINIMAL_ENUM 4 clang no __ARM_SIZEOF_WCHAR_T 4 +clang no __ARM_STATE_ZA 1 +clang no __ARM_STATE_ZT0 1 clang no __ATOMIC_ACQUIRE 2 clang no __ATOMIC_ACQ_REL 4 clang no __ATOMIC_CONSUME 1 @@ -111,7 +143,7 @@ clang no __ATOMIC_RELEASE 3 clang no __ATOMIC_SEQ_CST 5 clang no __BIGGEST_ALIGNMENT__ 8 clang no __BITINT_MAXWIDTH__ 128 -clang no __BOOL_WIDTH__ 8 +clang no __BOOL_WIDTH__ 1 clang no __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ clang no __CHAR_BIT__ 8 clang no __CLANG_ATOMIC_BOOL_LOCK_FREE 2 @@ -139,10 +171,11 @@ clang no __DBL_MAX__ 1.7976931348623157e+308 clang no __DBL_MIN_10_EXP__ (-307) clang no __DBL_MIN_EXP__ (-1021) clang no __DBL_MIN__ 2.2250738585072014e-308 +clang no __DBL_NORM_MAX__ 1.7976931348623157e+308 clang no __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__ clang no __DYNAMIC__ 1 -clang no __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 140000 -clang no __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ 140000 +clang no __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 270000 +clang no __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ 270000 clang no __FINITE_MATH_ONLY__ 0 clang no __FLT16_DECIMAL_DIG__ 5 clang no __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16 @@ -158,10 +191,12 @@ clang no __FLT16_MAX__ 6.5504e+4F16 clang no __FLT16_MIN_10_EXP__ (-4) clang no __FLT16_MIN_EXP__ (-13) clang no __FLT16_MIN__ 6.103515625e-5F16 +clang no __FLT16_NORM_MAX__ 6.5504e+4F16 clang no __FLT_DECIMAL_DIG__ 9 clang no __FLT_DENORM_MIN__ 1.40129846e-45F clang no __FLT_DIG__ 6 clang no __FLT_EPSILON__ 1.19209290e-7F +clang no __FLT_EVAL_METHOD__ 0 clang no __FLT_HAS_DENORM__ 1 clang no __FLT_HAS_INFINITY__ 1 clang no __FLT_HAS_QUIET_NAN__ 1 @@ -172,9 +207,22 @@ clang no __FLT_MAX__ 3.40282347e+38F clang no __FLT_MIN_10_EXP__ (-37) clang no __FLT_MIN_EXP__ (-125) clang no __FLT_MIN__ 1.17549435e-38F +clang no __FLT_NORM_MAX__ 3.40282347e+38F clang no __FLT_RADIX__ 2 +clang no __FPCLASS_NEGINF 0x0004 +clang no __FPCLASS_NEGNORMAL 0x0008 +clang no __FPCLASS_NEGSUBNORMAL 0x0010 +clang no __FPCLASS_NEGZERO 0x0020 +clang no __FPCLASS_POSINF 0x0200 +clang no __FPCLASS_POSNORMAL 0x0100 +clang no __FPCLASS_POSSUBNORMAL 0x0080 +clang no __FPCLASS_POSZERO 0x0040 +clang no __FPCLASS_QNAN 0x0002 +clang no __FPCLASS_SNAN 0x0001 clang no __FP_FAST_FMA 1 clang no __FP_FAST_FMAF 1 +clang no __FUNCTION_MULTI_VERSIONING_SUPPORT_LEVEL 202430 +clang no __GCC_ASM_FLAG_OUTPUTS__ 1 clang no __GCC_ATOMIC_BOOL_LOCK_FREE 2 clang no __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2 clang no __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2 @@ -189,6 +237,7 @@ clang no __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2 clang no __GCC_CONSTRUCTIVE_SIZE 64 clang no __GCC_DESTRUCTIVE_SIZE 256 clang no __GCC_HAVE_DWARF2_CFI_ASM 1 +clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1 @@ -197,26 +246,32 @@ clang no __GNUC_MINOR__ 2 clang no __GNUC_PATCHLEVEL__ 1 clang no __GNUC__ 4 clang no __GXX_ABI_VERSION 1002 +clang no __HAVE_FUNCTION_MULTI_VERSIONING 1 +clang no __INT16_C(c) c clang no __INT16_C_SUFFIX__ clang no __INT16_FMTd__ "hd" clang no __INT16_FMTi__ "hi" clang no __INT16_MAX__ 32767 clang no __INT16_TYPE__ short +clang no __INT32_C(c) c clang no __INT32_C_SUFFIX__ clang no __INT32_FMTd__ "d" clang no __INT32_FMTi__ "i" clang no __INT32_MAX__ 2147483647 clang no __INT32_TYPE__ int +clang no __INT64_C(c) c##LL clang no __INT64_C_SUFFIX__ LL clang no __INT64_FMTd__ "lld" clang no __INT64_FMTi__ "lli" clang no __INT64_MAX__ 9223372036854775807LL clang no __INT64_TYPE__ long long int +clang no __INT8_C(c) c clang no __INT8_C_SUFFIX__ clang no __INT8_FMTd__ "hhd" clang no __INT8_FMTi__ "hhi" clang no __INT8_MAX__ 127 clang no __INT8_TYPE__ signed char +clang no __INTMAX_C(c) c##L clang no __INTMAX_C_SUFFIX__ L clang no __INTMAX_FMTd__ "ld" clang no __INTMAX_FMTi__ "li" @@ -284,6 +339,7 @@ clang no __LDBL_MAX__ 1.7976931348623157e+308L clang no __LDBL_MIN_10_EXP__ (-307) clang no __LDBL_MIN_EXP__ (-1021) clang no __LDBL_MIN__ 2.2250738585072014e-308L +clang no __LDBL_NORM_MAX__ 1.7976931348623157e+308L clang no __LITTLE_ENDIAN__ 1 clang no __LLONG_WIDTH__ 64 clang no __LONG_LONG_MAX__ 9223372036854775807LL @@ -291,6 +347,11 @@ clang no __LONG_MAX__ 9223372036854775807L clang no __LONG_WIDTH__ 64 clang no __LP64__ 1 clang no __MACH__ 1 +clang no __MEMORY_SCOPE_DEVICE 1 +clang no __MEMORY_SCOPE_SINGLE 4 +clang no __MEMORY_SCOPE_SYSTEM 0 +clang no __MEMORY_SCOPE_WRKGRP 2 +clang no __MEMORY_SCOPE_WVFRNT 3 clang no __NO_INLINE__ 1 clang no __NO_MATH_ERRNO__ 1 clang no __OBJC_BOOL_IS_BOOL 1 @@ -337,6 +398,7 @@ clang no __SIZE_MAX__ 18446744073709551615UL clang no __SIZE_TYPE__ long unsigned int clang no __SIZE_WIDTH__ 64 clang no __SSP__ 1 +clang no __UINT16_C(c) c clang no __UINT16_C_SUFFIX__ clang no __UINT16_FMTX__ "hX" clang no __UINT16_FMTo__ "ho" @@ -344,6 +406,7 @@ clang no __UINT16_FMTu__ "hu" clang no __UINT16_FMTx__ "hx" clang no __UINT16_MAX__ 65535 clang no __UINT16_TYPE__ unsigned short +clang no __UINT32_C(c) c##U clang no __UINT32_C_SUFFIX__ U clang no __UINT32_FMTX__ "X" clang no __UINT32_FMTo__ "o" @@ -351,6 +414,7 @@ clang no __UINT32_FMTu__ "u" clang no __UINT32_FMTx__ "x" clang no __UINT32_MAX__ 4294967295U clang no __UINT32_TYPE__ unsigned int +clang no __UINT64_C(c) c##ULL clang no __UINT64_C_SUFFIX__ ULL clang no __UINT64_FMTX__ "llX" clang no __UINT64_FMTo__ "llo" @@ -358,6 +422,7 @@ clang no __UINT64_FMTu__ "llu" clang no __UINT64_FMTx__ "llx" clang no __UINT64_MAX__ 18446744073709551615ULL clang no __UINT64_TYPE__ long long unsigned int +clang no __UINT8_C(c) c clang no __UINT8_C_SUFFIX__ clang no __UINT8_FMTX__ "hhX" clang no __UINT8_FMTo__ "hho" @@ -365,6 +430,7 @@ clang no __UINT8_FMTu__ "hhu" clang no __UINT8_FMTx__ "hhx" clang no __UINT8_MAX__ 255 clang no __UINT8_TYPE__ unsigned char +clang no __UINTMAX_C(c) c##UL clang no __UINTMAX_C_SUFFIX__ UL clang no __UINTMAX_FMTX__ "lX" clang no __UINTMAX_FMTo__ "lo" @@ -429,7 +495,7 @@ clang no __UINT_LEAST8_FMTx__ "hhx" clang no __UINT_LEAST8_MAX__ 255 clang no __UINT_LEAST8_TYPE__ unsigned char clang no __USER_LABEL_PREFIX__ _ -clang no __VERSION__ "Apple LLVM 15.0.0 (clang-1500.3.9.4)" +clang no __VERSION__ "Apple LLVM 21.0.0 (clang-2100.3.34.2)" clang no __WCHAR_MAX__ 2147483647 clang no __WCHAR_TYPE__ int clang no __WCHAR_WIDTH__ 32 @@ -437,7 +503,7 @@ clang no __WINT_MAX__ 2147483647 clang no __WINT_TYPE__ int clang no __WINT_WIDTH__ 32 clang no __aarch64__ 1 -clang no __apple_build_version__ 15000309 +clang no __apple_build_version__ 21000334 clang no __arm64 1 clang no __arm64__ 1 clang no __clang_literal_encoding__ "UTF-8" diff --git a/bases/cmake-native/macos-arm/clang/lib_macos_arm64/predefined_macros.txt b/bases/cmake-native/macos-arm/clang/lib_macos_arm64/predefined_macros.txt index f7f01571e4..30c1d87f8a 100644 --- a/bases/cmake-native/macos-arm/clang/lib_macos_arm64/predefined_macros.txt +++ b/bases/cmake-native/macos-arm/clang/lib_macos_arm64/predefined_macros.txt @@ -30,28 +30,55 @@ # the characters until the end of the line are used as the macro value. # # Created by make_predef_macro_table -# Thu Oct 17 16:13:17 EDT 2024 +# Mon Oct 19 10:30:08 EDT 2026 # # C compiler information # command: /usr/bin/clang # -# Apple clang version 15.0.0 (clang-1500.3.9.4) -# Target: arm64-apple-darwin23.4.0 +# Apple clang version 21.0.0 (clang-2100.3.34.2) +# Target: arm64-apple-darwin27.0.0 # Thread model: posix # InstalledDir: /Library/Developer/CommandLineTools/usr/bin # # C++ compiler information # command: /usr/bin/clang # -# Apple clang version 15.0.0 (clang-1500.3.9.4) -# Target: arm64-apple-darwin23.4.0 +# Apple clang version 21.0.0 (clang-2100.3.34.2) +# Target: arm64-apple-darwin27.0.0 # Thread model: posix # InstalledDir: /Library/Developer/CommandLineTools/usr/bin # clang_cpp no __DEPRECATED 1 clang_cpp no __GNUG__ 4 +clang_cpp no __GXX_EXPERIMENTAL_CXX0X__ 1 clang_cpp no __GXX_WEAK__ 1 clang_cpp no __private_extern__ extern +clang no TARGET_IPHONE_SIMULATOR 0 +clang no TARGET_OS_ARROW 1 +clang no TARGET_OS_BRIDGE 0 +clang no TARGET_OS_DRIVERKIT 0 +clang no TARGET_OS_EMBEDDED 0 +clang no TARGET_OS_FIRMWARE 0 +clang no TARGET_OS_IOS 0 +clang no TARGET_OS_IOSMAC 0 +clang no TARGET_OS_IPHONE 0 +clang no TARGET_OS_KERNELKIT 0 +clang no TARGET_OS_LINUX 0 +clang no TARGET_OS_MAC 1 +clang no TARGET_OS_MACCATALYST 0 +clang no TARGET_OS_NANO 0 +clang no TARGET_OS_OSX 1 +clang no TARGET_OS_SIMULATOR 0 +clang no TARGET_OS_TV 0 +clang no TARGET_OS_UEFI 0 +clang no TARGET_OS_UIKITFORMAC 0 +clang no TARGET_OS_UNIX 0 +clang no TARGET_OS_VISION 0 +clang no TARGET_OS_WATCH 0 +clang no TARGET_OS_WIN32 0 +clang no TARGET_OS_WINDOWS 0 +clang no TARGET_OS_XR 0 +clang no _HAS_BUILTIN_AVAILABLE_FEATS 1 clang no _LP64 1 clang no __AARCH64EL__ 1 clang no __AARCH64_CMODEL_SMALL__ 1 @@ -60,9 +87,11 @@ clang no __APPLE_CC__ 6000 clang no __APPLE__ 1 clang no __ARM64_ARCH_8__ 1 clang no __ARM_64BIT_STATE 1 -clang no __ARM_ACLE 200 +clang no __ARM_ACLE 202420 +clang no __ARM_ACLE_VERSION(year,quarter,patch) (100 * (year) + 10 * (quarter) + (patch)) clang no __ARM_ALIGN_MAX_STACK_PWR 4 clang no __ARM_ARCH 8 +clang no __ARM_ARCH_8_2__ 1 clang no __ARM_ARCH_8_3__ 1 clang no __ARM_ARCH_8_4__ 1 clang no __ARM_ARCH_8_5__ 1 @@ -70,6 +99,7 @@ clang no __ARM_ARCH_ISA_A64 1 clang no __ARM_ARCH_PROFILE 'A' clang no __ARM_FEATURE_AES 1 clang no __ARM_FEATURE_ATOMICS 1 +clang no __ARM_FEATURE_BTI 1 clang no __ARM_FEATURE_CLZ 1 clang no __ARM_FEATURE_COMPLEX 1 clang no __ARM_FEATURE_CRC32 1 @@ -86,23 +116,25 @@ clang no __ARM_FEATURE_IDIV 1 clang no __ARM_FEATURE_JCVT 1 clang no __ARM_FEATURE_LDREX 0xF clang no __ARM_FEATURE_NUMERIC_MAXMIN 1 +clang no __ARM_FEATURE_PAUTH 1 clang no __ARM_FEATURE_QRDMX 1 clang no __ARM_FEATURE_RCPC 1 clang no __ARM_FEATURE_SHA2 1 clang no __ARM_FEATURE_SHA3 1 clang no __ARM_FEATURE_SHA512 1 -clang no __ARM_FEATURE_SM3 1 -clang no __ARM_FEATURE_SM4 1 clang no __ARM_FEATURE_UNALIGNED 1 clang no __ARM_FP16_ARGS 1 clang no __ARM_FP16_FORMAT_IEEE 1 clang no __ARM_FP 0xE clang no __ARM_NEON 1 clang no __ARM_NEON_FP 0xE +clang no __ARM_NEON_SVE_BRIDGE 1 clang no __ARM_NEON__ 1 clang no __ARM_PCS_AAPCS64 1 clang no __ARM_SIZEOF_MINIMAL_ENUM 4 clang no __ARM_SIZEOF_WCHAR_T 4 +clang no __ARM_STATE_ZA 1 +clang no __ARM_STATE_ZT0 1 clang no __ATOMIC_ACQUIRE 2 clang no __ATOMIC_ACQ_REL 4 clang no __ATOMIC_CONSUME 1 @@ -111,7 +143,7 @@ clang no __ATOMIC_RELEASE 3 clang no __ATOMIC_SEQ_CST 5 clang no __BIGGEST_ALIGNMENT__ 8 clang no __BITINT_MAXWIDTH__ 128 -clang no __BOOL_WIDTH__ 8 +clang no __BOOL_WIDTH__ 1 clang no __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ clang no __CHAR_BIT__ 8 clang no __CLANG_ATOMIC_BOOL_LOCK_FREE 2 @@ -139,10 +171,11 @@ clang no __DBL_MAX__ 1.7976931348623157e+308 clang no __DBL_MIN_10_EXP__ (-307) clang no __DBL_MIN_EXP__ (-1021) clang no __DBL_MIN__ 2.2250738585072014e-308 +clang no __DBL_NORM_MAX__ 1.7976931348623157e+308 clang no __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__ clang no __DYNAMIC__ 1 -clang no __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 140000 -clang no __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ 140000 +clang no __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 270000 +clang no __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ 270000 clang no __FINITE_MATH_ONLY__ 0 clang no __FLT16_DECIMAL_DIG__ 5 clang no __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16 @@ -158,10 +191,12 @@ clang no __FLT16_MAX__ 6.5504e+4F16 clang no __FLT16_MIN_10_EXP__ (-4) clang no __FLT16_MIN_EXP__ (-13) clang no __FLT16_MIN__ 6.103515625e-5F16 +clang no __FLT16_NORM_MAX__ 6.5504e+4F16 clang no __FLT_DECIMAL_DIG__ 9 clang no __FLT_DENORM_MIN__ 1.40129846e-45F clang no __FLT_DIG__ 6 clang no __FLT_EPSILON__ 1.19209290e-7F +clang no __FLT_EVAL_METHOD__ 0 clang no __FLT_HAS_DENORM__ 1 clang no __FLT_HAS_INFINITY__ 1 clang no __FLT_HAS_QUIET_NAN__ 1 @@ -172,9 +207,22 @@ clang no __FLT_MAX__ 3.40282347e+38F clang no __FLT_MIN_10_EXP__ (-37) clang no __FLT_MIN_EXP__ (-125) clang no __FLT_MIN__ 1.17549435e-38F +clang no __FLT_NORM_MAX__ 3.40282347e+38F clang no __FLT_RADIX__ 2 +clang no __FPCLASS_NEGINF 0x0004 +clang no __FPCLASS_NEGNORMAL 0x0008 +clang no __FPCLASS_NEGSUBNORMAL 0x0010 +clang no __FPCLASS_NEGZERO 0x0020 +clang no __FPCLASS_POSINF 0x0200 +clang no __FPCLASS_POSNORMAL 0x0100 +clang no __FPCLASS_POSSUBNORMAL 0x0080 +clang no __FPCLASS_POSZERO 0x0040 +clang no __FPCLASS_QNAN 0x0002 +clang no __FPCLASS_SNAN 0x0001 clang no __FP_FAST_FMA 1 clang no __FP_FAST_FMAF 1 +clang no __FUNCTION_MULTI_VERSIONING_SUPPORT_LEVEL 202430 +clang no __GCC_ASM_FLAG_OUTPUTS__ 1 clang no __GCC_ATOMIC_BOOL_LOCK_FREE 2 clang no __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2 clang no __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2 @@ -189,6 +237,7 @@ clang no __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2 clang no __GCC_CONSTRUCTIVE_SIZE 64 clang no __GCC_DESTRUCTIVE_SIZE 256 clang no __GCC_HAVE_DWARF2_CFI_ASM 1 +clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1 @@ -197,26 +246,32 @@ clang no __GNUC_MINOR__ 2 clang no __GNUC_PATCHLEVEL__ 1 clang no __GNUC__ 4 clang no __GXX_ABI_VERSION 1002 +clang no __HAVE_FUNCTION_MULTI_VERSIONING 1 +clang no __INT16_C(c) c clang no __INT16_C_SUFFIX__ clang no __INT16_FMTd__ "hd" clang no __INT16_FMTi__ "hi" clang no __INT16_MAX__ 32767 clang no __INT16_TYPE__ short +clang no __INT32_C(c) c clang no __INT32_C_SUFFIX__ clang no __INT32_FMTd__ "d" clang no __INT32_FMTi__ "i" clang no __INT32_MAX__ 2147483647 clang no __INT32_TYPE__ int +clang no __INT64_C(c) c##LL clang no __INT64_C_SUFFIX__ LL clang no __INT64_FMTd__ "lld" clang no __INT64_FMTi__ "lli" clang no __INT64_MAX__ 9223372036854775807LL clang no __INT64_TYPE__ long long int +clang no __INT8_C(c) c clang no __INT8_C_SUFFIX__ clang no __INT8_FMTd__ "hhd" clang no __INT8_FMTi__ "hhi" clang no __INT8_MAX__ 127 clang no __INT8_TYPE__ signed char +clang no __INTMAX_C(c) c##L clang no __INTMAX_C_SUFFIX__ L clang no __INTMAX_FMTd__ "ld" clang no __INTMAX_FMTi__ "li" @@ -284,6 +339,7 @@ clang no __LDBL_MAX__ 1.7976931348623157e+308L clang no __LDBL_MIN_10_EXP__ (-307) clang no __LDBL_MIN_EXP__ (-1021) clang no __LDBL_MIN__ 2.2250738585072014e-308L +clang no __LDBL_NORM_MAX__ 1.7976931348623157e+308L clang no __LITTLE_ENDIAN__ 1 clang no __LLONG_WIDTH__ 64 clang no __LONG_LONG_MAX__ 9223372036854775807LL @@ -291,6 +347,11 @@ clang no __LONG_MAX__ 9223372036854775807L clang no __LONG_WIDTH__ 64 clang no __LP64__ 1 clang no __MACH__ 1 +clang no __MEMORY_SCOPE_DEVICE 1 +clang no __MEMORY_SCOPE_SINGLE 4 +clang no __MEMORY_SCOPE_SYSTEM 0 +clang no __MEMORY_SCOPE_WRKGRP 2 +clang no __MEMORY_SCOPE_WVFRNT 3 clang no __NO_INLINE__ 1 clang no __NO_MATH_ERRNO__ 1 clang no __OBJC_BOOL_IS_BOOL 1 @@ -337,6 +398,7 @@ clang no __SIZE_MAX__ 18446744073709551615UL clang no __SIZE_TYPE__ long unsigned int clang no __SIZE_WIDTH__ 64 clang no __SSP__ 1 +clang no __UINT16_C(c) c clang no __UINT16_C_SUFFIX__ clang no __UINT16_FMTX__ "hX" clang no __UINT16_FMTo__ "ho" @@ -344,6 +406,7 @@ clang no __UINT16_FMTu__ "hu" clang no __UINT16_FMTx__ "hx" clang no __UINT16_MAX__ 65535 clang no __UINT16_TYPE__ unsigned short +clang no __UINT32_C(c) c##U clang no __UINT32_C_SUFFIX__ U clang no __UINT32_FMTX__ "X" clang no __UINT32_FMTo__ "o" @@ -351,6 +414,7 @@ clang no __UINT32_FMTu__ "u" clang no __UINT32_FMTx__ "x" clang no __UINT32_MAX__ 4294967295U clang no __UINT32_TYPE__ unsigned int +clang no __UINT64_C(c) c##ULL clang no __UINT64_C_SUFFIX__ ULL clang no __UINT64_FMTX__ "llX" clang no __UINT64_FMTo__ "llo" @@ -358,6 +422,7 @@ clang no __UINT64_FMTu__ "llu" clang no __UINT64_FMTx__ "llx" clang no __UINT64_MAX__ 18446744073709551615ULL clang no __UINT64_TYPE__ long long unsigned int +clang no __UINT8_C(c) c clang no __UINT8_C_SUFFIX__ clang no __UINT8_FMTX__ "hhX" clang no __UINT8_FMTo__ "hho" @@ -365,6 +430,7 @@ clang no __UINT8_FMTu__ "hhu" clang no __UINT8_FMTx__ "hhx" clang no __UINT8_MAX__ 255 clang no __UINT8_TYPE__ unsigned char +clang no __UINTMAX_C(c) c##UL clang no __UINTMAX_C_SUFFIX__ UL clang no __UINTMAX_FMTX__ "lX" clang no __UINTMAX_FMTo__ "lo" @@ -429,7 +495,7 @@ clang no __UINT_LEAST8_FMTx__ "hhx" clang no __UINT_LEAST8_MAX__ 255 clang no __UINT_LEAST8_TYPE__ unsigned char clang no __USER_LABEL_PREFIX__ _ -clang no __VERSION__ "Apple LLVM 15.0.0 (clang-1500.3.9.4)" +clang no __VERSION__ "Apple LLVM 21.0.0 (clang-2100.3.34.2)" clang no __WCHAR_MAX__ 2147483647 clang no __WCHAR_TYPE__ int clang no __WCHAR_WIDTH__ 32 @@ -437,7 +503,7 @@ clang no __WINT_MAX__ 2147483647 clang no __WINT_TYPE__ int clang no __WINT_WIDTH__ 32 clang no __aarch64__ 1 -clang no __apple_build_version__ 15000309 +clang no __apple_build_version__ 21000334 clang no __arm64 1 clang no __arm64__ 1 clang no __clang_literal_encoding__ "UTF-8" diff --git a/bases/cmake-native/macos-x86_64/clang/lib/predefined_macros.txt b/bases/cmake-native/macos-x86_64/clang/lib/predefined_macros.txt index 4fafa38dd4..7cd16e4540 100644 --- a/bases/cmake-native/macos-x86_64/clang/lib/predefined_macros.txt +++ b/bases/cmake-native/macos-x86_64/clang/lib/predefined_macros.txt @@ -30,28 +30,55 @@ # the characters until the end of the line are used as the macro value. # # Created by make_predef_macro_table -# Wed Jan 8 14:38:15 EST 2025 +# Mon Oct 19 10:30:08 EDT 2026 # # C compiler information -# command: /usr/bin/clang +# command: /usr/bin/clang -arch x86_64 # -# Apple clang version 12.0.5 (clang-1205.0.22.9) -# Target: x86_64-apple-darwin22.6.0 +# Apple clang version 21.0.0 (clang-2100.3.34.2) +# Target: x86_64-apple-darwin27.0.0 # Thread model: posix # InstalledDir: /Library/Developer/CommandLineTools/usr/bin # # C++ compiler information -# command: /usr/bin/clang +# command: /usr/bin/clang -arch x86_64 # -# Apple clang version 12.0.5 (clang-1205.0.22.9) -# Target: x86_64-apple-darwin22.6.0 +# Apple clang version 21.0.0 (clang-2100.3.34.2) +# Target: x86_64-apple-darwin27.0.0 # Thread model: posix # InstalledDir: /Library/Developer/CommandLineTools/usr/bin # clang_cpp no __DEPRECATED 1 clang_cpp no __GNUG__ 4 +clang_cpp no __GXX_EXPERIMENTAL_CXX0X__ 1 clang_cpp no __GXX_WEAK__ 1 clang_cpp no __private_extern__ extern +clang no TARGET_IPHONE_SIMULATOR 0 +clang no TARGET_OS_ARROW 0 +clang no TARGET_OS_BRIDGE 0 +clang no TARGET_OS_DRIVERKIT 0 +clang no TARGET_OS_EMBEDDED 0 +clang no TARGET_OS_FIRMWARE 0 +clang no TARGET_OS_IOS 0 +clang no TARGET_OS_IOSMAC 0 +clang no TARGET_OS_IPHONE 0 +clang no TARGET_OS_KERNELKIT 0 +clang no TARGET_OS_LINUX 0 +clang no TARGET_OS_MAC 1 +clang no TARGET_OS_MACCATALYST 0 +clang no TARGET_OS_NANO 0 +clang no TARGET_OS_OSX 1 +clang no TARGET_OS_SIMULATOR 0 +clang no TARGET_OS_TV 0 +clang no TARGET_OS_UEFI 0 +clang no TARGET_OS_UIKITFORMAC 0 +clang no TARGET_OS_UNIX 0 +clang no TARGET_OS_VISION 0 +clang no TARGET_OS_WATCH 0 +clang no TARGET_OS_WIN32 0 +clang no TARGET_OS_WINDOWS 0 +clang no TARGET_OS_XR 0 +clang no _HAS_BUILTIN_AVAILABLE_FEATS 1 clang no _LP64 1 clang no __APPLE_CC__ 6000 clang no __APPLE__ 1 @@ -62,6 +89,8 @@ clang no __ATOMIC_RELAXED 0 clang no __ATOMIC_RELEASE 3 clang no __ATOMIC_SEQ_CST 5 clang no __BIGGEST_ALIGNMENT__ 16 +clang no __BITINT_MAXWIDTH__ 8388608 +clang no __BOOL_WIDTH__ 1 clang no __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ clang no __CHAR_BIT__ 8 clang no __CLANG_ATOMIC_BOOL_LOCK_FREE 2 @@ -89,10 +118,11 @@ clang no __DBL_MAX__ 1.7976931348623157e+308 clang no __DBL_MIN_10_EXP__ (-307) clang no __DBL_MIN_EXP__ (-1021) clang no __DBL_MIN__ 2.2250738585072014e-308 +clang no __DBL_NORM_MAX__ 1.7976931348623157e+308 clang no __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__ clang no __DYNAMIC__ 1 -clang no __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 110300 -clang no __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ 110300 +clang no __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 270000 +clang no __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ 270000 clang no __FINITE_MATH_ONLY__ 0 clang no __FLT16_DECIMAL_DIG__ 5 clang no __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16 @@ -108,6 +138,7 @@ clang no __FLT16_MAX__ 6.5504e+4F16 clang no __FLT16_MIN_10_EXP__ (-4) clang no __FLT16_MIN_EXP__ (-13) clang no __FLT16_MIN__ 6.103515625e-5F16 +clang no __FLT16_NORM_MAX__ 6.5504e+4F16 clang no __FLT_DECIMAL_DIG__ 9 clang no __FLT_DENORM_MIN__ 1.40129846e-45F clang no __FLT_DIG__ 6 @@ -123,7 +154,18 @@ clang no __FLT_MAX__ 3.40282347e+38F clang no __FLT_MIN_10_EXP__ (-37) clang no __FLT_MIN_EXP__ (-125) clang no __FLT_MIN__ 1.17549435e-38F +clang no __FLT_NORM_MAX__ 3.40282347e+38F clang no __FLT_RADIX__ 2 +clang no __FPCLASS_NEGINF 0x0004 +clang no __FPCLASS_NEGNORMAL 0x0008 +clang no __FPCLASS_NEGSUBNORMAL 0x0010 +clang no __FPCLASS_NEGZERO 0x0020 +clang no __FPCLASS_POSINF 0x0200 +clang no __FPCLASS_POSNORMAL 0x0100 +clang no __FPCLASS_POSSUBNORMAL 0x0080 +clang no __FPCLASS_POSZERO 0x0040 +clang no __FPCLASS_QNAN 0x0002 +clang no __FPCLASS_SNAN 0x0001 clang no __FXSR__ 1 clang no __GCC_ASM_FLAG_OUTPUTS__ 1 clang no __GCC_ATOMIC_BOOL_LOCK_FREE 2 @@ -139,6 +181,7 @@ clang no __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1 clang no __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2 clang no __GCC_CONSTRUCTIVE_SIZE 64 clang no __GCC_DESTRUCTIVE_SIZE 64 +clang no __GCC_HAVE_DWARF2_CFI_ASM 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 @@ -148,26 +191,31 @@ clang no __GNUC_MINOR__ 2 clang no __GNUC_PATCHLEVEL__ 1 clang no __GNUC__ 4 clang no __GXX_ABI_VERSION 1002 +clang no __INT16_C(c) c clang no __INT16_C_SUFFIX__ clang no __INT16_FMTd__ "hd" clang no __INT16_FMTi__ "hi" clang no __INT16_MAX__ 32767 clang no __INT16_TYPE__ short +clang no __INT32_C(c) c clang no __INT32_C_SUFFIX__ clang no __INT32_FMTd__ "d" clang no __INT32_FMTi__ "i" clang no __INT32_MAX__ 2147483647 clang no __INT32_TYPE__ int +clang no __INT64_C(c) c##LL clang no __INT64_C_SUFFIX__ LL clang no __INT64_FMTd__ "lld" clang no __INT64_FMTi__ "lli" clang no __INT64_MAX__ 9223372036854775807LL clang no __INT64_TYPE__ long long int +clang no __INT8_C(c) c clang no __INT8_C_SUFFIX__ clang no __INT8_FMTd__ "hhd" clang no __INT8_FMTi__ "hhi" clang no __INT8_MAX__ 127 clang no __INT8_TYPE__ signed char +clang no __INTMAX_C(c) c##L clang no __INTMAX_C_SUFFIX__ L clang no __INTMAX_FMTd__ "ld" clang no __INTMAX_FMTi__ "li" @@ -183,35 +231,45 @@ clang no __INT_FAST16_FMTd__ "hd" clang no __INT_FAST16_FMTi__ "hi" clang no __INT_FAST16_MAX__ 32767 clang no __INT_FAST16_TYPE__ short +clang no __INT_FAST16_WIDTH__ 16 clang no __INT_FAST32_FMTd__ "d" clang no __INT_FAST32_FMTi__ "i" clang no __INT_FAST32_MAX__ 2147483647 clang no __INT_FAST32_TYPE__ int +clang no __INT_FAST32_WIDTH__ 32 clang no __INT_FAST64_FMTd__ "lld" clang no __INT_FAST64_FMTi__ "lli" clang no __INT_FAST64_MAX__ 9223372036854775807LL clang no __INT_FAST64_TYPE__ long long int +clang no __INT_FAST64_WIDTH__ 64 clang no __INT_FAST8_FMTd__ "hhd" clang no __INT_FAST8_FMTi__ "hhi" clang no __INT_FAST8_MAX__ 127 clang no __INT_FAST8_TYPE__ signed char +clang no __INT_FAST8_WIDTH__ 8 clang no __INT_LEAST16_FMTd__ "hd" clang no __INT_LEAST16_FMTi__ "hi" clang no __INT_LEAST16_MAX__ 32767 clang no __INT_LEAST16_TYPE__ short +clang no __INT_LEAST16_WIDTH__ 16 clang no __INT_LEAST32_FMTd__ "d" clang no __INT_LEAST32_FMTi__ "i" clang no __INT_LEAST32_MAX__ 2147483647 clang no __INT_LEAST32_TYPE__ int +clang no __INT_LEAST32_WIDTH__ 32 clang no __INT_LEAST64_FMTd__ "lld" clang no __INT_LEAST64_FMTi__ "lli" clang no __INT_LEAST64_MAX__ 9223372036854775807LL clang no __INT_LEAST64_TYPE__ long long int +clang no __INT_LEAST64_WIDTH__ 64 clang no __INT_LEAST8_FMTd__ "hhd" clang no __INT_LEAST8_FMTi__ "hhi" clang no __INT_LEAST8_MAX__ 127 clang no __INT_LEAST8_TYPE__ signed char +clang no __INT_LEAST8_WIDTH__ 8 clang no __INT_MAX__ 2147483647 +clang no __INT_WIDTH__ 32 +clang no __LAHF_SAHF__ 1 clang no __LDBL_DECIMAL_DIG__ 21 clang no __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L clang no __LDBL_DIG__ 18 @@ -226,13 +284,22 @@ clang no __LDBL_MAX__ 1.18973149535723176502e+4932L clang no __LDBL_MIN_10_EXP__ (-4931) clang no __LDBL_MIN_EXP__ (-16381) clang no __LDBL_MIN__ 3.36210314311209350626e-4932L +clang no __LDBL_NORM_MAX__ 1.18973149535723176502e+4932L clang no __LITTLE_ENDIAN__ 1 +clang no __LLONG_WIDTH__ 64 clang no __LONG_LONG_MAX__ 9223372036854775807LL clang no __LONG_MAX__ 9223372036854775807L +clang no __LONG_WIDTH__ 64 clang no __LP64__ 1 clang no __MACH__ 1 +clang no __MEMORY_SCOPE_DEVICE 1 +clang no __MEMORY_SCOPE_SINGLE 4 +clang no __MEMORY_SCOPE_SYSTEM 0 +clang no __MEMORY_SCOPE_WRKGRP 2 +clang no __MEMORY_SCOPE_WVFRNT 3 clang no __MMX__ 1 clang no __NO_INLINE__ 1 +clang no __NO_MATH_ERRNO__ 1 clang no __NO_MATH_INLINES 1 clang no __OBJC_BOOL_IS_BOOL 0 clang no __OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES 3 @@ -256,6 +323,7 @@ clang no __SCHAR_MAX__ 127 clang no __SEG_FS 1 clang no __SEG_GS 1 clang no __SHRT_MAX__ 32767 +clang no __SHRT_WIDTH__ 16 clang no __SIG_ATOMIC_MAX__ 2147483647 clang no __SIG_ATOMIC_WIDTH__ 32 clang no __SIZEOF_DOUBLE__ 8 @@ -286,6 +354,7 @@ clang no __SSE_MATH__ 1 clang no __SSE__ 1 clang no __SSP__ 1 clang no __SSSE3__ 1 +clang no __UINT16_C(c) c clang no __UINT16_C_SUFFIX__ clang no __UINT16_FMTX__ "hX" clang no __UINT16_FMTo__ "ho" @@ -293,6 +362,7 @@ clang no __UINT16_FMTu__ "hu" clang no __UINT16_FMTx__ "hx" clang no __UINT16_MAX__ 65535 clang no __UINT16_TYPE__ unsigned short +clang no __UINT32_C(c) c##U clang no __UINT32_C_SUFFIX__ U clang no __UINT32_FMTX__ "X" clang no __UINT32_FMTo__ "o" @@ -300,6 +370,7 @@ clang no __UINT32_FMTu__ "u" clang no __UINT32_FMTx__ "x" clang no __UINT32_MAX__ 4294967295U clang no __UINT32_TYPE__ unsigned int +clang no __UINT64_C(c) c##ULL clang no __UINT64_C_SUFFIX__ ULL clang no __UINT64_FMTX__ "llX" clang no __UINT64_FMTo__ "llo" @@ -307,6 +378,7 @@ clang no __UINT64_FMTu__ "llu" clang no __UINT64_FMTx__ "llx" clang no __UINT64_MAX__ 18446744073709551615ULL clang no __UINT64_TYPE__ long long unsigned int +clang no __UINT8_C(c) c clang no __UINT8_C_SUFFIX__ clang no __UINT8_FMTX__ "hhX" clang no __UINT8_FMTo__ "hho" @@ -314,6 +386,7 @@ clang no __UINT8_FMTu__ "hhu" clang no __UINT8_FMTx__ "hhx" clang no __UINT8_MAX__ 255 clang no __UINT8_TYPE__ unsigned char +clang no __UINTMAX_C(c) c##UL clang no __UINTMAX_C_SUFFIX__ UL clang no __UINTMAX_FMTX__ "lX" clang no __UINTMAX_FMTo__ "lo" @@ -378,7 +451,7 @@ clang no __UINT_LEAST8_FMTx__ "hhx" clang no __UINT_LEAST8_MAX__ 255 clang no __UINT_LEAST8_TYPE__ unsigned char clang no __USER_LABEL_PREFIX__ _ -clang no __VERSION__ "Apple LLVM 12.0.5 (clang-1205.0.22.9)" +clang no __VERSION__ "Apple LLVM 21.0.0 (clang-2100.3.34.2)" clang no __WCHAR_MAX__ 2147483647 clang no __WCHAR_TYPE__ int clang no __WCHAR_WIDTH__ 32 @@ -387,7 +460,9 @@ clang no __WINT_TYPE__ int clang no __WINT_WIDTH__ 32 clang no __amd64 1 clang no __amd64__ 1 -clang no __apple_build_version__ 12050022 +clang no __apple_build_version__ 21000334 +clang no __clang_literal_encoding__ "UTF-8" +clang no __clang_wide_literal_encoding__ "UTF-32" clang no __code_model_small__ 1 clang no __core2 1 clang no __core2__ 1 diff --git a/bases/cmake-native/macos-x86_64/clang/lib_macos_x86_64/predefined_macros.txt b/bases/cmake-native/macos-x86_64/clang/lib_macos_x86_64/predefined_macros.txt index 4fafa38dd4..7cd16e4540 100644 --- a/bases/cmake-native/macos-x86_64/clang/lib_macos_x86_64/predefined_macros.txt +++ b/bases/cmake-native/macos-x86_64/clang/lib_macos_x86_64/predefined_macros.txt @@ -30,28 +30,55 @@ # the characters until the end of the line are used as the macro value. # # Created by make_predef_macro_table -# Wed Jan 8 14:38:15 EST 2025 +# Mon Oct 19 10:30:08 EDT 2026 # # C compiler information -# command: /usr/bin/clang +# command: /usr/bin/clang -arch x86_64 # -# Apple clang version 12.0.5 (clang-1205.0.22.9) -# Target: x86_64-apple-darwin22.6.0 +# Apple clang version 21.0.0 (clang-2100.3.34.2) +# Target: x86_64-apple-darwin27.0.0 # Thread model: posix # InstalledDir: /Library/Developer/CommandLineTools/usr/bin # # C++ compiler information -# command: /usr/bin/clang +# command: /usr/bin/clang -arch x86_64 # -# Apple clang version 12.0.5 (clang-1205.0.22.9) -# Target: x86_64-apple-darwin22.6.0 +# Apple clang version 21.0.0 (clang-2100.3.34.2) +# Target: x86_64-apple-darwin27.0.0 # Thread model: posix # InstalledDir: /Library/Developer/CommandLineTools/usr/bin # clang_cpp no __DEPRECATED 1 clang_cpp no __GNUG__ 4 +clang_cpp no __GXX_EXPERIMENTAL_CXX0X__ 1 clang_cpp no __GXX_WEAK__ 1 clang_cpp no __private_extern__ extern +clang no TARGET_IPHONE_SIMULATOR 0 +clang no TARGET_OS_ARROW 0 +clang no TARGET_OS_BRIDGE 0 +clang no TARGET_OS_DRIVERKIT 0 +clang no TARGET_OS_EMBEDDED 0 +clang no TARGET_OS_FIRMWARE 0 +clang no TARGET_OS_IOS 0 +clang no TARGET_OS_IOSMAC 0 +clang no TARGET_OS_IPHONE 0 +clang no TARGET_OS_KERNELKIT 0 +clang no TARGET_OS_LINUX 0 +clang no TARGET_OS_MAC 1 +clang no TARGET_OS_MACCATALYST 0 +clang no TARGET_OS_NANO 0 +clang no TARGET_OS_OSX 1 +clang no TARGET_OS_SIMULATOR 0 +clang no TARGET_OS_TV 0 +clang no TARGET_OS_UEFI 0 +clang no TARGET_OS_UIKITFORMAC 0 +clang no TARGET_OS_UNIX 0 +clang no TARGET_OS_VISION 0 +clang no TARGET_OS_WATCH 0 +clang no TARGET_OS_WIN32 0 +clang no TARGET_OS_WINDOWS 0 +clang no TARGET_OS_XR 0 +clang no _HAS_BUILTIN_AVAILABLE_FEATS 1 clang no _LP64 1 clang no __APPLE_CC__ 6000 clang no __APPLE__ 1 @@ -62,6 +89,8 @@ clang no __ATOMIC_RELAXED 0 clang no __ATOMIC_RELEASE 3 clang no __ATOMIC_SEQ_CST 5 clang no __BIGGEST_ALIGNMENT__ 16 +clang no __BITINT_MAXWIDTH__ 8388608 +clang no __BOOL_WIDTH__ 1 clang no __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ clang no __CHAR_BIT__ 8 clang no __CLANG_ATOMIC_BOOL_LOCK_FREE 2 @@ -89,10 +118,11 @@ clang no __DBL_MAX__ 1.7976931348623157e+308 clang no __DBL_MIN_10_EXP__ (-307) clang no __DBL_MIN_EXP__ (-1021) clang no __DBL_MIN__ 2.2250738585072014e-308 +clang no __DBL_NORM_MAX__ 1.7976931348623157e+308 clang no __DECIMAL_DIG__ __LDBL_DECIMAL_DIG__ clang no __DYNAMIC__ 1 -clang no __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 110300 -clang no __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ 110300 +clang no __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ 270000 +clang no __ENVIRONMENT_OS_VERSION_MIN_REQUIRED__ 270000 clang no __FINITE_MATH_ONLY__ 0 clang no __FLT16_DECIMAL_DIG__ 5 clang no __FLT16_DENORM_MIN__ 5.9604644775390625e-8F16 @@ -108,6 +138,7 @@ clang no __FLT16_MAX__ 6.5504e+4F16 clang no __FLT16_MIN_10_EXP__ (-4) clang no __FLT16_MIN_EXP__ (-13) clang no __FLT16_MIN__ 6.103515625e-5F16 +clang no __FLT16_NORM_MAX__ 6.5504e+4F16 clang no __FLT_DECIMAL_DIG__ 9 clang no __FLT_DENORM_MIN__ 1.40129846e-45F clang no __FLT_DIG__ 6 @@ -123,7 +154,18 @@ clang no __FLT_MAX__ 3.40282347e+38F clang no __FLT_MIN_10_EXP__ (-37) clang no __FLT_MIN_EXP__ (-125) clang no __FLT_MIN__ 1.17549435e-38F +clang no __FLT_NORM_MAX__ 3.40282347e+38F clang no __FLT_RADIX__ 2 +clang no __FPCLASS_NEGINF 0x0004 +clang no __FPCLASS_NEGNORMAL 0x0008 +clang no __FPCLASS_NEGSUBNORMAL 0x0010 +clang no __FPCLASS_NEGZERO 0x0020 +clang no __FPCLASS_POSINF 0x0200 +clang no __FPCLASS_POSNORMAL 0x0100 +clang no __FPCLASS_POSSUBNORMAL 0x0080 +clang no __FPCLASS_POSZERO 0x0040 +clang no __FPCLASS_QNAN 0x0002 +clang no __FPCLASS_SNAN 0x0001 clang no __FXSR__ 1 clang no __GCC_ASM_FLAG_OUTPUTS__ 1 clang no __GCC_ATOMIC_BOOL_LOCK_FREE 2 @@ -139,6 +181,7 @@ clang no __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1 clang no __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2 clang no __GCC_CONSTRUCTIVE_SIZE 64 clang no __GCC_DESTRUCTIVE_SIZE 64 +clang no __GCC_HAVE_DWARF2_CFI_ASM 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 clang no __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 @@ -148,26 +191,31 @@ clang no __GNUC_MINOR__ 2 clang no __GNUC_PATCHLEVEL__ 1 clang no __GNUC__ 4 clang no __GXX_ABI_VERSION 1002 +clang no __INT16_C(c) c clang no __INT16_C_SUFFIX__ clang no __INT16_FMTd__ "hd" clang no __INT16_FMTi__ "hi" clang no __INT16_MAX__ 32767 clang no __INT16_TYPE__ short +clang no __INT32_C(c) c clang no __INT32_C_SUFFIX__ clang no __INT32_FMTd__ "d" clang no __INT32_FMTi__ "i" clang no __INT32_MAX__ 2147483647 clang no __INT32_TYPE__ int +clang no __INT64_C(c) c##LL clang no __INT64_C_SUFFIX__ LL clang no __INT64_FMTd__ "lld" clang no __INT64_FMTi__ "lli" clang no __INT64_MAX__ 9223372036854775807LL clang no __INT64_TYPE__ long long int +clang no __INT8_C(c) c clang no __INT8_C_SUFFIX__ clang no __INT8_FMTd__ "hhd" clang no __INT8_FMTi__ "hhi" clang no __INT8_MAX__ 127 clang no __INT8_TYPE__ signed char +clang no __INTMAX_C(c) c##L clang no __INTMAX_C_SUFFIX__ L clang no __INTMAX_FMTd__ "ld" clang no __INTMAX_FMTi__ "li" @@ -183,35 +231,45 @@ clang no __INT_FAST16_FMTd__ "hd" clang no __INT_FAST16_FMTi__ "hi" clang no __INT_FAST16_MAX__ 32767 clang no __INT_FAST16_TYPE__ short +clang no __INT_FAST16_WIDTH__ 16 clang no __INT_FAST32_FMTd__ "d" clang no __INT_FAST32_FMTi__ "i" clang no __INT_FAST32_MAX__ 2147483647 clang no __INT_FAST32_TYPE__ int +clang no __INT_FAST32_WIDTH__ 32 clang no __INT_FAST64_FMTd__ "lld" clang no __INT_FAST64_FMTi__ "lli" clang no __INT_FAST64_MAX__ 9223372036854775807LL clang no __INT_FAST64_TYPE__ long long int +clang no __INT_FAST64_WIDTH__ 64 clang no __INT_FAST8_FMTd__ "hhd" clang no __INT_FAST8_FMTi__ "hhi" clang no __INT_FAST8_MAX__ 127 clang no __INT_FAST8_TYPE__ signed char +clang no __INT_FAST8_WIDTH__ 8 clang no __INT_LEAST16_FMTd__ "hd" clang no __INT_LEAST16_FMTi__ "hi" clang no __INT_LEAST16_MAX__ 32767 clang no __INT_LEAST16_TYPE__ short +clang no __INT_LEAST16_WIDTH__ 16 clang no __INT_LEAST32_FMTd__ "d" clang no __INT_LEAST32_FMTi__ "i" clang no __INT_LEAST32_MAX__ 2147483647 clang no __INT_LEAST32_TYPE__ int +clang no __INT_LEAST32_WIDTH__ 32 clang no __INT_LEAST64_FMTd__ "lld" clang no __INT_LEAST64_FMTi__ "lli" clang no __INT_LEAST64_MAX__ 9223372036854775807LL clang no __INT_LEAST64_TYPE__ long long int +clang no __INT_LEAST64_WIDTH__ 64 clang no __INT_LEAST8_FMTd__ "hhd" clang no __INT_LEAST8_FMTi__ "hhi" clang no __INT_LEAST8_MAX__ 127 clang no __INT_LEAST8_TYPE__ signed char +clang no __INT_LEAST8_WIDTH__ 8 clang no __INT_MAX__ 2147483647 +clang no __INT_WIDTH__ 32 +clang no __LAHF_SAHF__ 1 clang no __LDBL_DECIMAL_DIG__ 21 clang no __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L clang no __LDBL_DIG__ 18 @@ -226,13 +284,22 @@ clang no __LDBL_MAX__ 1.18973149535723176502e+4932L clang no __LDBL_MIN_10_EXP__ (-4931) clang no __LDBL_MIN_EXP__ (-16381) clang no __LDBL_MIN__ 3.36210314311209350626e-4932L +clang no __LDBL_NORM_MAX__ 1.18973149535723176502e+4932L clang no __LITTLE_ENDIAN__ 1 +clang no __LLONG_WIDTH__ 64 clang no __LONG_LONG_MAX__ 9223372036854775807LL clang no __LONG_MAX__ 9223372036854775807L +clang no __LONG_WIDTH__ 64 clang no __LP64__ 1 clang no __MACH__ 1 +clang no __MEMORY_SCOPE_DEVICE 1 +clang no __MEMORY_SCOPE_SINGLE 4 +clang no __MEMORY_SCOPE_SYSTEM 0 +clang no __MEMORY_SCOPE_WRKGRP 2 +clang no __MEMORY_SCOPE_WVFRNT 3 clang no __MMX__ 1 clang no __NO_INLINE__ 1 +clang no __NO_MATH_ERRNO__ 1 clang no __NO_MATH_INLINES 1 clang no __OBJC_BOOL_IS_BOOL 0 clang no __OPENCL_MEMORY_SCOPE_ALL_SVM_DEVICES 3 @@ -256,6 +323,7 @@ clang no __SCHAR_MAX__ 127 clang no __SEG_FS 1 clang no __SEG_GS 1 clang no __SHRT_MAX__ 32767 +clang no __SHRT_WIDTH__ 16 clang no __SIG_ATOMIC_MAX__ 2147483647 clang no __SIG_ATOMIC_WIDTH__ 32 clang no __SIZEOF_DOUBLE__ 8 @@ -286,6 +354,7 @@ clang no __SSE_MATH__ 1 clang no __SSE__ 1 clang no __SSP__ 1 clang no __SSSE3__ 1 +clang no __UINT16_C(c) c clang no __UINT16_C_SUFFIX__ clang no __UINT16_FMTX__ "hX" clang no __UINT16_FMTo__ "ho" @@ -293,6 +362,7 @@ clang no __UINT16_FMTu__ "hu" clang no __UINT16_FMTx__ "hx" clang no __UINT16_MAX__ 65535 clang no __UINT16_TYPE__ unsigned short +clang no __UINT32_C(c) c##U clang no __UINT32_C_SUFFIX__ U clang no __UINT32_FMTX__ "X" clang no __UINT32_FMTo__ "o" @@ -300,6 +370,7 @@ clang no __UINT32_FMTu__ "u" clang no __UINT32_FMTx__ "x" clang no __UINT32_MAX__ 4294967295U clang no __UINT32_TYPE__ unsigned int +clang no __UINT64_C(c) c##ULL clang no __UINT64_C_SUFFIX__ ULL clang no __UINT64_FMTX__ "llX" clang no __UINT64_FMTo__ "llo" @@ -307,6 +378,7 @@ clang no __UINT64_FMTu__ "llu" clang no __UINT64_FMTx__ "llx" clang no __UINT64_MAX__ 18446744073709551615ULL clang no __UINT64_TYPE__ long long unsigned int +clang no __UINT8_C(c) c clang no __UINT8_C_SUFFIX__ clang no __UINT8_FMTX__ "hhX" clang no __UINT8_FMTo__ "hho" @@ -314,6 +386,7 @@ clang no __UINT8_FMTu__ "hhu" clang no __UINT8_FMTx__ "hhx" clang no __UINT8_MAX__ 255 clang no __UINT8_TYPE__ unsigned char +clang no __UINTMAX_C(c) c##UL clang no __UINTMAX_C_SUFFIX__ UL clang no __UINTMAX_FMTX__ "lX" clang no __UINTMAX_FMTo__ "lo" @@ -378,7 +451,7 @@ clang no __UINT_LEAST8_FMTx__ "hhx" clang no __UINT_LEAST8_MAX__ 255 clang no __UINT_LEAST8_TYPE__ unsigned char clang no __USER_LABEL_PREFIX__ _ -clang no __VERSION__ "Apple LLVM 12.0.5 (clang-1205.0.22.9)" +clang no __VERSION__ "Apple LLVM 21.0.0 (clang-2100.3.34.2)" clang no __WCHAR_MAX__ 2147483647 clang no __WCHAR_TYPE__ int clang no __WCHAR_WIDTH__ 32 @@ -387,7 +460,9 @@ clang no __WINT_TYPE__ int clang no __WINT_WIDTH__ 32 clang no __amd64 1 clang no __amd64__ 1 -clang no __apple_build_version__ 12050022 +clang no __apple_build_version__ 21000334 +clang no __clang_literal_encoding__ "UTF-8" +clang no __clang_wide_literal_encoding__ "UTF-32" clang no __code_model_small__ 1 clang no __core2 1 clang no __core2__ 1 diff --git a/util/Changes b/util/Changes index 2b5d271878..4fac26326f 100644 --- a/util/Changes +++ b/util/Changes @@ -1,5 +1,27 @@ Version 7.1 +10/19/26 [GH #319] +Clang's __FLT_EVAL_METHOD__ and the #embed macros in make_predef_macro_table + +Clang 13 and later implement __FLT_EVAL_METHOD__ as a builtin macro (its +value can be changed by "#pragma clang fp eval_method"), so it is not listed +in the -dM output used by make_predef_macro_table, and a predefined_macros.txt +file created from such a compiler did not define it. FLT_EVAL_METHOD (from +) then expanded to an undeclared identifier. When __FLT_EVAL_METHOD__ +is missing from the -dM output, make_predef_macro_table now preprocesses the +macro name to get its value and adds an entry for it. + +The __STDC_EMBED_NOT_FOUND__, __STDC_EMBED_FOUND__ and __STDC_EMBED_EMPTY__ +macros are now also suppressed, since the front end defines them itself when +#embed is enabled (which depends on the emulated compiler version). + +The predefined_macros.txt files of the macOS clang bases have been regenerated +with Apple clang 21.0.0 (clang-2100.3.34.2) and the macOS 27 SDK; the x86_64 +files were created on an arm64 host with "-arch x86_64". Among other things, +they now define __GCC_CONSTRUCTIVE_SIZE and __GCC_DESTRUCTIVE_SIZE, which +libc++ uses from C++17 on to define the hardware interference sizes. + + 10/15/26 [GH #307] Suppress the blocks macros in make_predef_macro_table output diff --git a/util/make_predef_macro_table b/util/make_predef_macro_table index 63bf663002..c639894cf1 100755 --- a/util/make_predef_macro_table +++ b/util/make_predef_macro_table @@ -78,6 +78,7 @@ get_predefined_macros() echo >>info.tmp if [ $result -eq 0 ] ; then $cmd $extra_opts -E -dM $file >$output + add_flt_eval_method $cmd $output $file else echo "make_predef_macro_table: $cmd returned a non-zero status." echo "make_predef_macro_table: $header omitted." @@ -85,6 +86,27 @@ get_predefined_macros() fi } +# +# Clang 13 and later implement __FLT_EVAL_METHOD__ as a builtin macro (its +# value can be changed by "#pragma clang fp eval_method"), so -dM does not +# list it. If it is missing from the -dM output, preprocess the macro name +# to get its value and add a definition for it. +# +add_flt_eval_method() +{ + fem_cmd=$1 + fem_output=$2 + fem_file=fem.${3##*.} + if ! grep "^#define __FLT_EVAL_METHOD__ " $fem_output >/dev/null ; then + echo "__FLT_EVAL_METHOD__" >$fem_file + fem_value=`$fem_cmd $extra_opts -E -P $fem_file | sed -e "/^ *$/d"` + if [ -n "$fem_value" ] && [ "$fem_value" != "__FLT_EVAL_METHOD__" ] ; then + echo "#define __FLT_EVAL_METHOD__ $fem_value" >>$fem_output + fi + rm -f $fem_file + fi +} + # # Reformat the list of #defines to the form expected by the front end. # @@ -140,6 +162,9 @@ delete_unneeded_entries() unneeded="$unneeded __STDC_NO_VLA__" unneeded="$unneeded __STDC_UTF_16__" unneeded="$unneeded __STDC_UTF_32__" + unneeded="$unneeded __STDC_EMBED_NOT_FOUND__" + unneeded="$unneeded __STDC_EMBED_FOUND__" + unneeded="$unneeded __STDC_EMBED_EMPTY__" unneeded="$unneeded __STDCPP_THREADS__" unneeded="$unneeded __STDCPP_DEFAULT_NEW_ALIGNMENT__" unneeded="$unneeded __GXX_RTTI" From 1729d15329c669f151d37dcd66868dc24020aa54 Mon Sep 17 00:00:00 2001 From: Matt Borland Date: Mon, 19 Oct 2026 11:05:34 -0400 Subject: [PATCH 4/4] Add more extensive rationale [] --- util/Changes | 9 ++++++--- util/make_predef_macro_table | 24 ++++++++++++++++++++---- 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/util/Changes b/util/Changes index 4fac26326f..ba3575670e 100644 --- a/util/Changes +++ b/util/Changes @@ -7,9 +7,12 @@ Clang 13 and later implement __FLT_EVAL_METHOD__ as a builtin macro (its value can be changed by "#pragma clang fp eval_method"), so it is not listed in the -dM output used by make_predef_macro_table, and a predefined_macros.txt file created from such a compiler did not define it. FLT_EVAL_METHOD (from -) then expanded to an undeclared identifier. When __FLT_EVAL_METHOD__ -is missing from the -dM output, make_predef_macro_table now preprocesses the -macro name to get its value and adds an entry for it. +) then expanded to an undeclared identifier. This affects clang on +all hosts, not only macOS. When __FLT_EVAL_METHOD__ is missing from the -dM +output, make_predef_macro_table now preprocesses the macro name to get its +value and adds an entry for it. The test is on the -dM output rather than on +--clang, since on macOS the default gcc and g++ commands are clang. GCC lists +the macro in its -dM output, so tables created with GCC are not affected. The __STDC_EMBED_NOT_FOUND__, __STDC_EMBED_FOUND__ and __STDC_EMBED_EMPTY__ macros are now also suppressed, since the front end defines them itself when diff --git a/util/make_predef_macro_table b/util/make_predef_macro_table index c639894cf1..9097c407fb 100755 --- a/util/make_predef_macro_table +++ b/util/make_predef_macro_table @@ -87,10 +87,26 @@ get_predefined_macros() } # -# Clang 13 and later implement __FLT_EVAL_METHOD__ as a builtin macro (its -# value can be changed by "#pragma clang fp eval_method"), so -dM does not -# list it. If it is missing from the -dM output, preprocess the macro name -# to get its value and add a definition for it. +# Clang 13 and later implement __FLT_EVAL_METHOD__ as a builtin macro rather +# than a predefined one (its value can be changed within a translation unit +# by "#pragma clang fp eval_method"), so -dM does not list it. The front end +# does not define it either, so without an entry in predefined_macros.txt, +# FLT_EVAL_METHOD from expands to an undeclared identifier. This +# affects clang on all hosts, not just macOS. +# +# When the macro is missing from the -dM output, preprocess the macro name to +# get its value and add a definition for it. The value is target-dependent +# (e.g., 2 with "-m32 -mno-sse"), so it is computed with the same options as +# the -dM run rather than assumed to be 0. The temporary file has the same +# suffix as the -dM input, so the value is computed in the same language +# mode. If the compiler does not define the macro at all, the name comes back +# unchanged and nothing is added. +# +# The test is on the -dM output rather than on --clang because on macOS the +# default gcc and g++ commands are Apple clang, so a GNU table made there with +# the default commands needs this too. GCC always lists __FLT_EVAL_METHOD__ +# in its -dM output (as does clang before version 13), so for those compilers +# the grep finds it and the table is left exactly as -dM produced it. # add_flt_eval_method() {