Summary
On iOS, unhandled Kotlin crashes are reported in Firebase Crashlytics as:
Fatal Exception: (anonymous namespace)::ExceptionObjHolderImpl
instead of showing the Kotlin exception as the main fatal cause.
Environment
- Device: iPhone 16 Pro Max
- iOS: 26.2.1
- Kotlin: 2.3.10
- Compose Multiplatform: 1.9.3
- Firebase iOS SDK (SPM): 12.9.0
- NSExceptionKt Crashlytics reporter (SPM)
- nsexception-kt-core: 1.0.7
Configuration
FirebaseApp.configure()
NSExceptionKt.addReporter(.crashlytics(causedByStrategy: .append))
Steps to Reproduce
- Launch the iOS app.
- Trigger a Kotlin test crash from the app UI.
- Wait for the crash to appear in Firebase Crashlytics.
- Open the crash event details.
Expected Result
Crashlytics fatal should identify the Kotlin exception origin/class as the main crash cause.
Actual Result
Crashlytics fatal is still reported as:
Fatal Exception: (anonymous namespace)::ExceptionObjHolderImpl
Kotlin frames and Kotlin stacktrace logs are present, but the fatal classification remains generic.
Stack Trace (excerpt)
Fatal Exception: (anonymous namespace)::ExceptionObjHolderImpl
Crashed: com.google.firebase.crashlytics.ios.exception
...
FIRCLSExceptionRecordNSException
CrashlyticsNSExceptionKtReporter.reportException(_:)
kfun:com.rickclephas.kmp.nsexceptionkt.core.addReporter...
kfun:com.rickclephas.kmp.nsexceptionkt.core.wrapUnhandledExceptionHook...
kfun:androidx.compose.ui.scene.BaseComposeScene#sendPointerEvent...
Summary
On iOS, unhandled Kotlin crashes are reported in Firebase Crashlytics as:
Fatal Exception: (anonymous namespace)::ExceptionObjHolderImplinstead of showing the Kotlin exception as the main fatal cause.
Environment
Configuration
Steps to Reproduce
Expected Result
Crashlytics fatal should identify the Kotlin exception origin/class as the main crash cause.
Actual Result
Crashlytics fatal is still reported as:
Fatal Exception: (anonymous namespace)::ExceptionObjHolderImplKotlin frames and Kotlin stacktrace logs are present, but the fatal classification remains generic.
Stack Trace (excerpt)