1// { dg-do assemble  }
2// GROUPS passed gb scope
3template<class T, int N> class fixed_array {
4public:
5  T _array[N];
6};
7
8class Hash {
9public:
10  Hash (int);
11};
12
13typedef fixed_array<char, 4> ipAddress_t;
14
15class IPAddress {
16protected:
17  long _i;
18public:
19  IPAddress (ipAddress_t ip) { }
20  IPAddress () { }
21  IPAddress netMask () { return *this; }
22  operator Hash ();
23};
24
25IPAddress::operator Hash ()
26{
27  return Hash (_i);
28}
29