There are currently quite a few locations in the compiler similar to the following:
|
let future_trait = self.tcx.lang_items().future_trait().unwrap(); |
This causes an internal compiler error in case the expected lang item is not defined,
for example when using #![no_core]. (see #72099)
A better way to deal with this is to use tcx.require_lang_item(FutureTraitLangItem, opt_span) instead, which cleanly stops compilation in case the lang item is missing.
See #72170, which already did this in some places.
This issue has been assigned to @DoctorN via this comment.
There are currently quite a few locations in the compiler similar to the following:
rust/src/librustc_typeck/check/mod.rs
Line 5301 in 7c34d8d
This causes an internal compiler error in case the expected lang item is not defined,
for example when using
#![no_core]. (see #72099)A better way to deal with this is to use
tcx.require_lang_item(FutureTraitLangItem, opt_span)instead, which cleanly stops compilation in case the lang item is missing.See #72170, which already did this in some places.
This issue has been assigned to @DoctorN via this comment.