* decl.c (make_typename_type): s/parameters/arguments/.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / friend2.C
blobc4df8a0f3ba4e5d63d34308a18932a2dd78af343
1 // PR c++/47721
2 // { dg-do compile { target c++11 } }
4 // template type parameter friend:
6 template<class W>
7 class Q
9   static const int I = 2;
10 public:
11   friend W;
14 struct B
16   int ar[Q<B>::I];
19 // bonus template template parameter friend:
21 template <class T> struct A;
23 template<template <class> class W>
24 class P
26   static const int I = 2;
27 public:
28   // I'm not sure this is well-formed, but I can't find anything
29   // that says otherwise.
30   template <class T> friend class W;
33 template <class T>
34 struct A
36   int ar[P<A>::I];
39 A<int> a;