ns18.C   [plain text]


// { dg-do assemble  }
// Origin: Theo Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>

namespace Bname {
  class B;
}

template <class T>
class A {
  friend class Bname::B;
  static const int a = 1;
public:
  A() { }
};

namespace Bname {
  class B {
  	int a;
  public:
  	template<class T>
  	B(const T&):a(T::a) { }
  };
}

int
main()
{
  A<int> a;
  Bname::B b(a);
}