1 error[E0412]: cannot find type `PhantomData` in this scope
2 --> $DIR/ice-6252.rs:8:9
5 | ^^^^^^^^^^^ not found in this scope
7 help: consider importing one of these items
9 LL | use core::marker::PhantomData;
11 LL | use serde::__private::PhantomData;
13 LL | use std::marker::PhantomData;
16 error[E0412]: cannot find type `VAL` in this scope
17 --> $DIR/ice-6252.rs:10:63
19 LL | impl<N, M> TypeVal<usize> for Multiply<N, M> where N: TypeVal<VAL> {}
20 | - ^^^ not found in this scope
22 | help: you might be missing a type parameter: `, VAL`
24 error[E0046]: not all trait items implemented, missing: `VAL`
25 --> $DIR/ice-6252.rs:10:1
28 | ------------- `VAL` from trait
30 LL | impl<N, M> TypeVal<usize> for Multiply<N, M> where N: TypeVal<VAL> {}
31 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `VAL` in implementation
33 error: constant expression depends on a generic parameter
34 --> $DIR/ice-6252.rs:13:9
36 LL | [1; <Multiply<Five, Five>>::VAL];
37 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
39 = note: this may fail depending on what value the parameter takes
41 error: aborting due to 4 previous errors
43 Some errors have detailed explanations: E0046, E0412.
44 For more information about an error, try `rustc --explain E0046`.