// check-pass #![feature(generic_const_items, associated_const_equality)] #![allow(incomplete_features)] trait Owner { const C: u32; const K: u32; } impl Owner for () { const C: u32 = N; const K: u32 = N + 1; } fn take0(_: impl Owner = { N }>) {} fn take1(_: impl Owner = 100>) {} fn main() { take0::<128>(()); take1(()); }