diff --git a/src/core/runtime.d b/src/core/runtime.d index 03103daa..fd185816 100644 --- a/src/core/runtime.d +++ b/runtime/druntime/src/core/runtime.d @@ -799,7 +799,8 @@ unittest } /// Default implementation for POSIX systems -version (Posix) private class DefaultTraceInfo : Throwable.TraceInfo +version (CRuntime_Bionic) { /* no backtrace[_symbols] */ } +else version (Posix) private class DefaultTraceInfo : Throwable.TraceInfo { // backtrace version (CRuntime_Glibc) @@ -825,7 +826,10 @@ version (Posix) private class DefaultTraceInfo : Throwable.TraceInfo { version (LDC) { - numframes = backtrace( callstack.ptr, MAXFRAMES ); + static if ( __traits( compiles, backtrace ) ) + numframes = backtrace( callstack.ptr, MAXFRAMES ); + else + numframes = 0; } else {