Skip to content

Commit 09c7b83

Browse files
committed
Merge branch 'release/0.9'
Backport the fix for the buggy __builtin_subcll in Xcode 14.3.1 on arm64.
2 parents dd34f96 + 4c1ca55 commit 09c7b83

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,13 @@ and this project adheres to [Semantic Versioning].
1313
[#287](https://github.com/chfast/intx/pull/287)
1414
[#290](https://github.com/chfast/intx/pull/290)
1515

16+
## [0.9.3] — 2023-07-17
17+
18+
### Fixed
19+
20+
- Fixed buggy `__builtin_subcll` in Xcode 14.3.1 on arm64.
21+
[294](https://github.com/chfast/intx/pull/294)
22+
1623
## [0.9.2] — 2023-03-11
1724

1825
### Changed
@@ -188,6 +195,7 @@ and this project adheres to [Semantic Versioning].
188195

189196

190197
[0.10.0]: https://github.com/chfast/intx/releases/v0.10.0
198+
[0.9.3]: https://github.com/chfast/intx/releases/v0.9.3
191199
[0.9.2]: https://github.com/chfast/intx/releases/v0.9.2
192200
[0.9.1]: https://github.com/chfast/intx/releases/v0.9.1
193201
[0.9.0]: https://github.com/chfast/intx/releases/v0.9.0

include/intx/intx.hpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,8 @@ inline constexpr result_with_carry<uint64_t> addc(
185185
inline constexpr result_with_carry<uint64_t> subc(
186186
uint64_t x, uint64_t y, bool carry = false) noexcept
187187
{
188-
#if __has_builtin(__builtin_subcll)
188+
// Use __builtin_subcll if available (except buggy Xcode 14.3.1 on arm64).
189+
#if __has_builtin(__builtin_subcll) && __apple_build_version__ != 14030022
189190
if (!std::is_constant_evaluated())
190191
{
191192
unsigned long long carryout = 0; // NOLINT(google-runtime-int)

0 commit comments

Comments
 (0)