summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.law/cvt11.C
blob: 53dd1e9076d56e9668d6b00c9e425ddcab77b295 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// { dg-do assemble  }
// GROUPS passed conversions
// cvt file
// Date: Tue, 10 Nov 92 11:08:08 PST
// From: rrh@tera.com (Robert R. Henry)
// Message-Id: <9211101908.AA13557@tera.com>
// Subject: type cast of qualified const member breaks g++2.3.1

// Ignore extra errors in C++0x mode.
// { dg-prune-output "non-static data member initializers" }
// { dg-prune-output "from this location" }
// { dg-prune-output "uninitialized" }
#include <stdio.h>

class Thing{
private: int x;
   public: const int N = -1; // { dg-error "" } bad initialization
  Thing(int y);
};

class Bar{ public: void doit(void); };

void Bar::doit(void)
{
  int i, j;
  i = Thing::N;
  printf("i = %d\n", i);

  j = (int)Thing::N;
  printf("i = %d\n", j);
}
Thing::Thing(int y) { x = y; }
int main(){ Bar x; x.doit(); }