summaryrefslogtreecommitdiffstats
path: root/src/test/ui/const-generics/issue-103243.rs
blob: 78c73522bb5076676d181e0db04955a8af173d69 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// build-pass

pub trait CSpace<const N: usize>: Sized {
    type Traj;
}

pub trait FullTrajectory<T, S1, const N: usize> {}

pub struct Const<const R: usize>;

pub trait Obstacle<CS, const N: usize>
where
    CS: CSpace<N>,
{
    fn trajectory_free<FT, S1>(&self, t: &FT)
    where
        FT: FullTrajectory<CS::Traj, S1, N>;
}

// -----

const N: usize = 4;

struct ObstacleSpace2df32;

impl<CS> Obstacle<CS, N> for ObstacleSpace2df32
where
    CS: CSpace<N>,
{
    fn trajectory_free<TF, S1>(&self, t: &TF)
    where
        TF: FullTrajectory<CS::Traj, S1, N>,
    {
    }
}

fn main() {}