+++ /dev/null
-template <class T>
-class C;
-
-template <class U>
-struct S
-{
- template <class V>
- void f(V v)
- {
- C<V> cv;
- cv.i = 3;
- }
-};
-
-
-template <class T>
-class C
-{
- template <class U>
- template <class V>
- friend void S<U>::f(V);
-
- int i;
-};
-
-
-int main()
-{
- S<int> si;
- si.f(3.0);
- S<long> sl;
- sl.f('c');
-}