Skip to content

Commit 6f05f53

Browse files
authored
Rollup merge of rust-lang#99404 - jmqd:master, r=compiler-errors
Use span_bug for unexpected field projection type Improves the compiler error backtrace information, as shown in rust-lang#99363, by using `span_bug` instead of `bug`. New output: ``` build/aarch64-apple-darwin/stage1/bin/rustc /tmp/test.rs --edition=2021 error: internal compiler error: compiler/rustc_middle/src/ty/closure.rs:185:25: Unexpected type Opaque(DefId(0:5 ~ test[db0f]::main::T::{opaque#0}), []) for `Field` projection --> /tmp/test.rs:11:27 | 11 | let Foo((a, b)) = foo; | ^^^ thread 'rustc' panicked at 'Box<dyn Any>', /Users/jmq/src/forked/rust/compiler/rustc_errors/src/lib.rs:1331:9 stack backtrace: ``` (Remainder of output truncated.)
2 parents 34be64d + 38f090b commit 6f05f53

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

compiler/rustc_middle/src/ty/closure.rs

+5-1
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,11 @@ impl<'tcx> CapturedPlace<'tcx> {
182182
.unwrap();
183183
}
184184
ty => {
185-
bug!("Unexpected type {:?} for `Field` projection", ty)
185+
span_bug!(
186+
self.get_capture_kind_span(tcx),
187+
"Unexpected type {:?} for `Field` projection",
188+
ty
189+
)
186190
}
187191
},
188192

0 commit comments

Comments
 (0)