28d5f47e42a5faa56b4dd9729b72305054e98917
[gcc.git] / gcc / testsuite / g++.old-deja / g++.other / overload14.C
1 // { dg-do run }
2 extern "C" void abort();
3
4 struct A {
5 typedef double (&B);
6 typedef const double (&C);
7
8 A() { }
9
10 operator C () const;
11 operator B ();
12 };
13
14 static const double d = 2.0;
15 static double e = 3.0;
16
17 A::operator A::C () const
18 {
19 abort ();
20 return d;
21 }
22
23 A::operator A::B ()
24 {
25 return e;
26 }
27
28 int main ()
29 {
30 (A::C) A ();
31 return 0;
32 }