1 // RUN: %clang_cc1 -fsyntax-only -verify %s
5 template<typename U
> struct Inner
{ };
7 template<typename U
> void f(T
, U
) { }
10 template<> template<typename U
>
11 struct X
<int>::Inner
{
15 template<> template<typename U
>
16 void X
<int>::f(int x
, U y
) {
17 x
= y
; // expected-error{{incompatible pointer to integer conversion}}
20 void test(X
<int> xi
, X
<long> xl
, float *fp
) {
21 X
<int>::Inner
<float*> xii
;
25 xi
.f(17, fp
); // expected-note{{instantiation}}
26 X
<long>::Inner
<float*> xli
;
28 xli
.member
= fp
; // expected-error{{no member}}