37 lines
492 B
C
37 lines
492 B
C
// { dg-do compile }
|
|
// { dg-additional-options "-ftrapv" }
|
|
|
|
struct B {
|
|
B(int = 0);
|
|
};
|
|
int c;
|
|
int *d;
|
|
struct G {
|
|
G();
|
|
int numProcs_;
|
|
};
|
|
int fn1();
|
|
B fn2() {
|
|
if (c)
|
|
return 0;
|
|
return B();
|
|
}
|
|
|
|
long &fn3(long &p1, long &p2) {
|
|
if (p2 < p1)
|
|
return p2;
|
|
return p1;
|
|
}
|
|
|
|
void fn4(long p1) {
|
|
long a = fn1();
|
|
fn2();
|
|
int b = fn3(p1, a);
|
|
for (int i; i < b; ++i)
|
|
d[0] = 0;
|
|
for (; a < p1; ++a)
|
|
d[a] = 0;
|
|
}
|
|
|
|
G::G() { fn4(numProcs_ + 1); }
|