summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.pt/friend49.C
blob: 745819af592d4982744a7a9f54702eb6dcdca4cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// { dg-do assemble  }

// Copyright (C) 2001 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 5 Jun 2001 <nathan@codesourcery.com>

// Bug 2929. We were forgetting about template parm scope when
// injecting a friend decl into a class template specialization's
// containing scope.

template <class Type> class Vec;

template <> class Vec<double>
{
public:
  Vec ();
  Vec<double> & Fn (double);
  friend Vec<double> Fn (const Vec<double> &, double);
}; // pop_binding ICE

template <class _Tp> class Alloc
{
  template <class _Tp1> struct Rebind
  {
    typedef Alloc<_Tp1> other;
  };
};