File tree 1 file changed +11
-0
lines changed
compiler/rustc_driver/src 1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -1148,6 +1148,17 @@ static DEFAULT_HOOK: LazyLock<Box<dyn Fn(&panic::PanicInfo<'_>) + Sync + Send +
1148
1148
LazyLock :: new ( || {
1149
1149
let hook = panic:: take_hook ( ) ;
1150
1150
panic:: set_hook ( Box :: new ( |info| {
1151
+ // If the error was caused by a broken pipe then this is not a bug.
1152
+ // Write the error and return immediately. See #98700.
1153
+ #[ cfg( windows) ]
1154
+ if let Some ( msg) = info. payload ( ) . downcast_ref :: < String > ( ) {
1155
+ if msg. starts_with ( "failed printing to stdout: " ) && msg. ends_with ( "(os error 232)" )
1156
+ {
1157
+ early_error_no_abort ( ErrorOutputType :: default ( ) , & msg) ;
1158
+ return ;
1159
+ }
1160
+ } ;
1161
+
1151
1162
// Invoke the default handler, which prints the actual panic message and optionally a backtrace
1152
1163
( * DEFAULT_HOOK ) ( info) ;
1153
1164
You can’t perform that action at this time.
0 commit comments