Skip to content

Commit 1ae8efd

Browse files
authored
fix: XCode 26.4 compatibility (#1438)
## 📜 Description Fixed compilation errors when compiling app with XCode 26.4 ## 💡 Motivation and Context The easiest fix is to force necessary C++ version in postinstall script. We can keep it for now, but when upgrade to RN 0.85+ it can be safely removed 🤞 ## 📢 Changelog <!-- High level overview of important changes --> <!-- For example: fixed status bar manipulation; added new types declarations; --> <!-- If your changes don't affect one of platform/language below - then remove this platform/language --> ### Example - force C++17 standard for `fmt`; ## 🤔 How Has This Been Tested? Tested on iPhone 17 Pro (iOS 26.4) with XCode 26.4. ## 📸 Screenshots (if appropriate): |Before|After| |-------|-----| |<img width="274" height="567" alt="Screenshot 2026-04-16 at 16 15 54" src="https://github.com/user-attachments/assets/448a777e-d992-4e39-93e9-9eaed60a1ae9" />|<img width="285" height="636" alt="image" src="https://github.com/user-attachments/assets/179d5f76-5101-41b3-b1ea-61a498a51f6c" />| ## 📝 Checklist - [x] CI successfully passed - [x] I added new mocks and corresponding unit-tests if library API was changed
1 parent b3dc83e commit 1ae8efd

4 files changed

Lines changed: 20 additions & 2 deletions

File tree

FabricExample/ios/Podfile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,5 +33,14 @@ target 'KeyboardControllerFabricExample' do
3333
:mac_catalyst_enabled => false,
3434
# :ccache_enabled => true
3535
)
36+
37+
# Fix fmt compilation error with Xcode 26.4 (const eval broken in Apple Clang 17+)
38+
installer.pods_project.targets.each do |target|
39+
if target.name == 'fmt'
40+
target.build_configurations.each do |config|
41+
config.build_settings['CLANG_CXX_LANGUAGE_STANDARD'] = 'c++17'
42+
end
43+
end
44+
end
3645
end
3746
end

FabricExample/ios/Podfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3190,6 +3190,6 @@ SPEC CHECKSUMS:
31903190
SocketRocket: d4aabe649be1e368d1318fdf28a022d714d65748
31913191
Yoga: 922d794dce2af9c437f864bf4093abfa7a131adb
31923192

3193-
PODFILE CHECKSUM: f46c4ff801235007081bd301b6e8daff54c0c492
3193+
PODFILE CHECKSUM: d45f7cf34858c180261cf0d1bee48426d1242c00
31943194

31953195
COCOAPODS: 1.15.2

example/ios/Podfile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,5 +35,14 @@ target 'KeyboardControllerExample' do
3535
:mac_catalyst_enabled => false,
3636
# :ccache_enabled => true
3737
)
38+
39+
# Fix fmt compilation error with Xcode 26.4 (const eval broken in Apple Clang 17+)
40+
installer.pods_project.targets.each do |target|
41+
if target.name == 'fmt'
42+
target.build_configurations.each do |config|
43+
config.build_settings['CLANG_CXX_LANGUAGE_STANDARD'] = 'c++17'
44+
end
45+
end
46+
end
3847
end
3948
end

example/ios/Podfile.lock

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3017,6 +3017,6 @@ SPEC CHECKSUMS:
30173017
SocketRocket: d4aabe649be1e368d1318fdf28a022d714d65748
30183018
Yoga: 922d794dce2af9c437f864bf4093abfa7a131adb
30193019

3020-
PODFILE CHECKSUM: c51a5e2124b01c5794c41f1f13ee16704466637a
3020+
PODFILE CHECKSUM: 6a517affee16b03f1ddaf7ff04b3a32770880334
30213021

30223022
COCOAPODS: 1.15.2

0 commit comments

Comments
 (0)