xref: /openbsd-src/gnu/usr.bin/gcc/gcc/testsuite/g++.old-deja/g++.pt/memtemp69.C (revision c87b03e512fc05ed6e0222f6fb0ae86264b1d05b)
1 struct S
2 {
3   template <class T>
fS4   void f(T (&i)[7])
5     {}
6 
gS7   void g()
8     {
9       int i[] = {1, 2, 3, 4, 5, 6, 7};
10       f(i);
11       int j[7];
12       f(j);
13     }
14 };
15 
16 struct foo {
17   template <typename T, int N>
array_endfoo18   static T* array_end(T(&array)[N]) { return &array[N]; }
19 };
20 
21 struct X
22 {
23   template <class T1>
fX24   void f(const T1&) {}
25 };
26 
main(int ac,char * av[])27 int main(int ac, char* av[]) {
28   S s;
29   s.g();
30   int i[] = {1,2,3,4,5};
31   int* e = foo::array_end(i);
32   X x;
33   x.f("hello");
34 }
35 
36