File tree Expand file tree Collapse file tree 2 files changed +6
-1
lines changed Expand file tree Collapse file tree 2 files changed +6
-1
lines changed Original file line number Diff line number Diff line change @@ -286,7 +286,11 @@ fn maybe_install_panic_hook(force_show_panics: bool) {
286286 BridgeState :: NotConnected => true ,
287287 BridgeState :: Connected ( _) | BridgeState :: InUse => force_show_panics,
288288 } ) ;
289- if show {
289+ // We normally report panics by catching unwinds and passing the payload from the
290+ // unwind back to the compiler, but if the panic doesn't unwind we'll abort before
291+ // the compiler has a chance to print an error. So we special-case PanicInfo where
292+ // can_unwind is false.
293+ if show || !info. can_unwind ( ) {
290294 prev ( info)
291295 }
292296 } ) ) ;
Original file line number Diff line number Diff line change 3030#![ feature( maybe_uninit_write_slice) ]
3131#![ feature( negative_impls) ]
3232#![ feature( new_uninit) ]
33+ #![ feature( panic_can_unwind) ]
3334#![ feature( restricted_std) ]
3435#![ feature( rustc_attrs) ]
3536#![ feature( min_specialization) ]
You can’t perform that action at this time.
0 commit comments