Summary
A clean iOS Release simulator build with react-native-safe-area-context 5.8.0 emits two -Wreorder-init-list diagnostics per architecture from RNCSafeAreaProviderComponentView.mm. Under Xcode 26.4.1, libtool also warns that RNCSafeAreaViewState.o has no symbols when its implementation is compiled out for the selected platform/configuration.
Environment
- react-native-safe-area-context: 5.8.0
- React Native: 0.86.0
- Expo: 57.0.4
- Xcode: 26.4.1
- SDK: iOS 26.2 simulator
- configuration: Release, new architecture
Diagnostics
RNCSafeAreaProviderComponentView.mm:110:27: warning: ISO C++ requires field designators to be specified in declaration order; field left will be initialized after field bottom [-Wreorder-init-list]
RNCSafeAreaProviderComponentView.mm:111:26: warning: ISO C++ requires field designators to be specified in declaration order; field bottom will be initialized after field right [-Wreorder-init-list]
libtool: warning: RNCSafeAreaViewState.o has no symbols
Source-level fixes verified locally
- Initialize
EdgeInsets in declaration order: top, right, bottom, left.
- Ensure
RNCSafeAreaViewState.cpp emits a real external-linkage symbol even when platform guards compile out the implementation.
These changes remove the diagnostics without warning flags, suppression, or log filtering. I can prepare a focused patch if useful.
Summary
A clean iOS Release simulator build with react-native-safe-area-context 5.8.0 emits two
-Wreorder-init-listdiagnostics per architecture fromRNCSafeAreaProviderComponentView.mm. Under Xcode 26.4.1, libtool also warns thatRNCSafeAreaViewState.ohas no symbols when its implementation is compiled out for the selected platform/configuration.Environment
Diagnostics
Source-level fixes verified locally
EdgeInsetsin declaration order:top,right,bottom,left.RNCSafeAreaViewState.cppemits a real external-linkage symbol even when platform guards compile out the implementation.These changes remove the diagnostics without warning flags, suppression, or log filtering. I can prepare a focused patch if useful.