Skip to content

fix(ios): force fmt to c++17 for Xcode 26#5997

Merged
samholmes merged 1 commit intodevelopfrom
sam/ios-26-sdk
Apr 24, 2026
Merged

fix(ios): force fmt to c++17 for Xcode 26#5997
samholmes merged 1 commit intodevelopfrom
sam/ios-26-sdk

Conversation

@samholmes
Copy link
Copy Markdown
Contributor

@samholmes samholmes commented Apr 18, 2026

Newer Apple Clang toolchains fail to compile fmt 11.0.2 under C++20 with consteval-related errors, blocking simulator builds on Xcode 26.

Keep the workaround in Podfile post_install so pod regeneration consistently reapplies FMT_USE_CONSTEVAL=0 and fmt-specific C++17 settings instead of requiring manual edits in Pods/.

CHANGELOG

Does this branch warrant an entry to the CHANGELOG?

  • Yes
  • No

Dependencies

none

Requirements

If you have made any visual changes to the GUI. Make sure you have:

  • Tested on iOS device
  • Tested on Android device
  • Tested on small-screen device (iPod Touch)
  • Tested on large-screen device (tablet)

Note

Medium Risk
Touches iOS CocoaPods post_install build settings and forces C++ flags, which could affect native pod compilation/linking across configs even though it’s a targeted workaround.

Overview
Keeps Xcode simulator/device builds working on newer Apple Clang toolchains by adding CocoaPods post_install overrides for the fmt dependency.

This globally adds FMT_USE_CONSTEVAL=0 to pod preprocessor definitions, and after react_native_post_install re-applies fmt-specific C++17 settings (including updating generated .xcconfig values) so the workaround persists across pod install regenerations.

Updates Podfile.lock checksum accordingly.

Reviewed by Cursor Bugbot for commit 1394f3d. Bugbot is set up for automated code reviews on this repo. Configure here.


Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit f4e8c87. Configure here.

Comment thread ios/Podfile Outdated
@samholmes samholmes force-pushed the sam/ios-26-sdk branch 3 times, most recently from a1d8fad to abc3f78 Compare April 24, 2026 01:24
@j0ntz
Copy link
Copy Markdown
Contributor

j0ntz commented Apr 24, 2026

Attempt to find a future proof solution for post RN upgrade. If not possible, just merge

Copy link
Copy Markdown
Contributor

@j0ntz j0ntz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Check last comment

Newer Apple Clang toolchains fail to compile fmt 11.0.2 under
C++20 with consteval-related errors, blocking simulator builds on
Xcode 26.

Keep the workaround in Podfile post_install so pod regeneration
consistently reapplies FMT_USE_CONSTEVAL=0 and fmt-specific C++17
settings instead of requiring manual edits in Pods/.
@samholmes samholmes enabled auto-merge April 24, 2026 23:06
@samholmes samholmes merged commit ce9937a into develop Apr 24, 2026
4 checks passed
@samholmes samholmes deleted the sam/ios-26-sdk branch April 24, 2026 23:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants