summaryrefslogtreecommitdiffstats
path: root/tests/ui/const-generics/issue-66451.rs
blob: c8d5515e987398e185eeb70ad0201f3088ed1d24 (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
#![feature(adt_const_params)]
#![allow(incomplete_features)]

use std::marker::ConstParamTy;

#[derive(Debug, PartialEq, Eq, ConstParamTy)]
struct Foo {
    value: i32,
    nested: &'static Bar<i32>,
}

#[derive(Debug, PartialEq, Eq, ConstParamTy)]
struct Bar<T>(T);

struct Test<const F: Foo>;

fn main() {
    let x: Test<{
        Foo {
            value: 3,
            nested: &Bar(4),
        }
    }> = Test;
    let y: Test<{
        Foo {
            value: 3,
            nested: &Bar(5),
        }
    }> = x; //~ ERROR mismatched types
}