Open
Description
If we try to apply #[track_caller]
on closures, like:
pub fn expect_non_local<OtherId>(self) -> Res<OtherId> {
self.map_id(
#[track_caller]
|_| panic!("unexpected `Res::Local`"),
)
}
This needs an #![feature(closure_track_caller)]
, which is normal, but it also needs the feature attributes on the crates that have a caller of that method.
See #96894 (comment) and #96894 (comment) for more details.
TL;DR: In the above PR's situation, that method belongs to rustc_hir but we also have to add the feature attributes to rustc_resolve and librustdoc.
I expected to see this happen: compiles fine with one feature attribute
Instead, this happened: compilation error