//@ check-pass // We currently special case bevy from erroring on incorrect implied bounds // from normalization (issue #109628). // Otherwise, we would expect this to hit that error. pub trait WorldQuery {} impl WorldQuery for &u8 {} pub struct Query(Q); pub trait SystemParam { type State; } impl SystemParam for Query { type State = (); // `Q: 'static` is required because we need the TypeId of Q ... } pub struct ParamSet(T) where T::State: Sized; fn handler<'a>(x: ParamSet>) { let _: ParamSet<_> = x; } fn ref_handler<'a>(_: &ParamSet>) {} fn main() {}