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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [g++.old-deja/] [g++.other/] [crash22.C] - Blame information for rev 749

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

Line No. Rev Author Line
1 699 jeremybenn
// { dg-do link  }
2
// { dg-options "-O2" }
3
 
4
class foo
5
{
6
};
7
 
8
typedef void *voidp;
9
class vect : public foo
10
{
11
public:
12
  voidp& a();
13
  int b();
14
};
15
 
16
class bar
17
{
18
public:
19
  bar *c(bool (*f)(bar *node), voidp g)
20
    {
21
      int i=0;
22
      bool j;
23
      while (i < d.b()){
24
        j = (f == __null) || f((bar*)d.a());
25
        if (j)
26
          ((bar*)d.a())->c(f, g);
27
        i++;
28
      }
29
      return this;
30
    }
31
 public:
32
  vect d;
33
  bar *e(foo *k);
34
};
35
 
36
bar *bar::e(foo *k)
37
{
38
  return c(__null, k);
39
}
40
 
41
voidp &vect::a()
42
{
43
  static voidp x;
44
  return x;
45
}
46
 
47
int vect::b()
48
{
49
  static int x;
50
  return x;
51
}
52
 
53
int main()
54
{
55
  return 0;
56
}

powered by: WebSVN 2.1.0

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