OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.old-deja/] [g++.mike/] [p4736c.C] - Blame information for rev 699

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 699 jeremybenn
// { dg-do run  }
2
// prms-id: 4736
3
 
4
int did_fail;
5
 
6
class Rep {
7
public:
8
  virtual ~Rep() { }
9
};
10
 
11
class Rep_1 : public Rep {
12
};
13
 
14
class VBaseMain {
15
public:
16
  virtual ~VBaseMain() { }
17
};
18
 
19
class OtherVBase {
20
public:
21
  virtual ~OtherVBase() { }
22
};
23
 
24
class Rep_2 : public Rep {
25
};
26
 
27
class DVBase : public VBaseMain, public Rep_2, public OtherVBase {
28
public:
29
  virtual ~DVBase() { }
30
};
31
 
32
class Main : public Rep_1, virtual public DVBase {
33
public:
34
  virtual ~Main() { did_fail = 0; }
35
};
36
 
37
int main() {
38
  Main* m;
39
  did_fail = 1;
40
  delete new Main;
41
  if (did_fail)
42
    return 1;
43
  did_fail = 1;
44
  delete (Rep*)(Rep_1*)new Main;
45
  if (did_fail)
46
    return 2;
47
  did_fail = 1;
48
  delete (DVBase*)new Main;
49
  if (did_fail)
50
    return 3;
51
  did_fail = 1;
52
  delete (VBaseMain*)(DVBase*)new Main;
53
  if (did_fail)
54
    return 4;
55
  did_fail = 1;
56
  delete (Rep*)(Rep_2*)(DVBase*)new Main;
57
  if (did_fail)
58
    return 5;
59
  did_fail = 1;
60
  delete (OtherVBase*)(DVBase*)new Main;
61
  if (did_fail)
62
    return 6;
63
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.