1 error[E0308]: mismatched types
2 --> $DIR/types-mismatch-const-args.rs:14:41
4 LL | let _: A<'a, u32, {2u32}, {3u32}> = A::<'a, u32, {2u32 + 2u32}, {3u32}> { data: PhantomData };
5 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `2_u32`, found `4_u32`
7 = note: expected type `2_u32`
10 error[E0308]: mismatched types
11 --> $DIR/types-mismatch-const-args.rs:16:41
13 LL | let _: A<'a, u16, {2u32}, {3u32}> = A::<'b, u32, {2u32}, {3u32}> { data: PhantomData };
14 | -------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u16`, found `u32`
16 | expected due to this
18 = note: expected struct `A<'a, u16, _, _>`
19 found struct `A<'b, u32, _, _>`
21 error[E0308]: mismatched types
22 --> $DIR/types-mismatch-const-args.rs:18:41
24 LL | let _: A<'a, u16, {4u32}, {3u32}> = A::<'b, u32, {2u32}, {3u32}> { data: PhantomData };
25 | -------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `u16`, found `u32`
27 | expected due to this
29 = note: expected struct `A<'a, u16, 4_u32, _>`
30 found struct `A<'b, u32, 2_u32, _>`
32 error: aborting due to 3 previous errors
34 For more information about this error, try `rustc --explain E0308`.