If during constraint normalization
any such substitution results in an invalid type or expression,
the program is ill-formed, no diagnostic is required.
[Example 1: template<typename T>concept A = T::value ||true;
template<typename U>concept B = A<U*>;
template<typename V>concept C = B<V&>; // IFNDR, it would form the invalid type V&*// in the parameter mapping — end example]