//@ revisions: cfail #![feature(generic_const_exprs, adt_const_params)] #![allow(incomplete_features)] use std::marker::ConstParamTy; #[derive(PartialEq, Eq, ConstParamTy)] struct NonZeroUsize(usize); impl NonZeroUsize { const fn get(self) -> usize { self.0 } } // regression test for #77650 fn c() where [T; N.get()]: Sized, { use std::convert::TryFrom; <[T; N.get()]>::try_from(()) //~^ error: the trait bound //~| error: the trait bound //~| error: mismatched types } fn main() {}