//@ run-pass #![feature(generic_const_exprs)] #![allow(incomplete_features)] // This tests that the inhabited check doesn't cause // ICEs by trying to evaluate `T::ASSOC` with an incorrect `ParamEnv`. trait Foo { const ASSOC: usize = 1; } #[allow(dead_code)] struct Iced(T, [(); T::ASSOC]) where [(); T::ASSOC]: ; impl Foo for u32 {} fn foo() where [(); T::ASSOC]: , { let _iced: Iced = return; } fn main() { foo::(); }