// check-pass pub trait CSpace { type Traj; } pub struct Const; pub trait Obstacle { fn trajectory_free(&self, t: &FT) where CS::Traj: Sized, CS: CSpace; } // ----- const N: usize = 4; struct ObstacleSpace2df32; impl Obstacle for ObstacleSpace2df32 { fn trajectory_free(&self, t: &TF) where CS::Traj: Sized, CS: CSpace, { } } fn main() {}