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

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.old-deja/] [g++.mike/] [misc13.C] - Blame information for rev 305

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 305 jeremybenn
// { dg-do run  }
2
// GROUPS passed vtable
3
extern "C" int printf (const char *, ...);
4
enum E { vf_request, vf_event } want;
5
 
6
int errs = 0;
7
 
8
class ivResource {
9
public:
10
  virtual ~ivResource () { }
11
};
12
 
13
class ivHandler   : public ivResource   {
14
public:
15
  virtual void event() { }
16
};
17
 
18
class ivGlyph   : public ivResource   {
19
public:
20
  virtual ~ivGlyph  () { }
21
  virtual void request () {
22
    if (want!=vf_request)
23
      ++errs;
24
  }
25
};
26
 
27
class ItemView : public ivGlyph, public ivHandler {
28
public:
29
  virtual void event () {
30
    if (want!=vf_event)
31
      ++errs;
32
  }
33
} a;
34
 
35
ivGlyph *bar() {
36
  return &a;
37
}
38
 
39
ivHandler *bar2() {
40
  return &a;
41
}
42
 
43
int main() {
44
  want=vf_request;
45
  bar()->request();
46
  want=vf_event;
47
  bar2()->event();
48
  if (errs) {
49
    printf("FAIL\n");
50
    return 1;
51
  }
52
  printf("PASS\n");
53
  return 0;
54
}

powered by: WebSVN 2.1.0

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