1 // { dg-do assemble  }
2 // GROUPS passed gb scope
3 template<class T, int N> class FixedArray_t {
4 public:
5   T _array[N];
6 
FixedArray_t()7   FixedArray_t () { }
8 };
9 
10 typedef FixedArray_t<unsigned char, 4> IPAddress_t;
11 
12 class IPAddress {
13 public:
IPAddress(IPAddress_t ip)14   IPAddress (IPAddress_t ip) { }
15 
IPAddress_t()16   operator IPAddress_t ()
17   {
18     IPAddress_t rv;
19     return rv;
20   }
21 
IPAddress()22   IPAddress () { }
23 };
24 
25 class DatagramHeader {
26 public:
27   IPAddress _src;
28 
29   void setHeader (IPAddress);
30 };
31 
32 void
setHeader(IPAddress)33 DatagramHeader::setHeader (IPAddress)
34 {
35 }
36