Rollup merge of #105201 - cjgillot:issue-105040, r=compiler-errors
Do not call fn_sig on non-functions. Fixes https://github.com/rust-lang/rust/issues/105040 Fixes https://github.com/rust-lang/rust/issues/89271
This commit is contained in:
commit
f91fa512d1
3 changed files with 40 additions and 0 deletions
|
@ -1918,6 +1918,14 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
|
|||
receiver: Option<&'tcx hir::Expr<'tcx>>,
|
||||
args: &'tcx [hir::Expr<'tcx>],
|
||||
) -> bool {
|
||||
// Do not call `fn_sig` on non-functions.
|
||||
if !matches!(
|
||||
self.tcx.def_kind(def_id),
|
||||
DefKind::Fn | DefKind::AssocFn | DefKind::Variant | DefKind::Ctor(..)
|
||||
) {
|
||||
return false;
|
||||
}
|
||||
|
||||
let sig = self.tcx.fn_sig(def_id).skip_binder();
|
||||
let args_referencing_param: Vec<_> = sig
|
||||
.inputs()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue