// RUN: %clang_cc1 -verify %s
// an attempt is made to find template argument values that will make P, after
// substitution of the deduced values, compatible with A
namespacecv_mismatch{template<typename>structX{};template<typename T>voidf(X<const T>);// expected-note {{cannot deduce a type for 'T' that would make 'const T' equal 'volatile int'}}
voidg(){f(X<volatileint>());}// expected-error {{no matching}}
}