1 // { dg-do assemble  }
2 // { dg-options "-g" }
3 
4 //  Copyright (C) 2001 Free Software Foundation, Inc.
5 //  Contributed by Jeffrey D. Oldham 2001 May 17 <oldham@codesourcery.com>.
6 
7 // This illustrates that debugging information for CONCAT RTL's
8 // supports only COMPLEX_TYPE types, not other types.
9 
10 namespace std {
11   template<typename _Tp> class complex;
12 
13   template<> class complex<double>
14   {
15   public:
16     complex(double =0.0, double =0.0);
17 
18   private:
19     typedef __complex__ double _ComplexT;
20     _ComplexT _M_value;
21   };
22 
23   inline
complex(double __r,double __i)24   complex<double>::complex(double __r, double __i)
25   {
26     __real__ _M_value = __r;
27     __imag__ _M_value = __i;
28   }
29 }
30 
31 template <int Dim, class T>
32 class Engine
33 {
34 public:
35   Engine (T val = T()) {}
36 };
37 
main()38 int main()
39 {
40   Engine<1, std::complex<double> > e;
41   return 0;
42 }
43