29 lines
529 B
C
29 lines
529 B
C
/* { dg-do compile} */
|
|
/* { dg-options "-O2 -fira-region=all -fnon-call-exceptions" } */
|
|
extern long double getme (void);
|
|
extern void useme (long double);
|
|
struct Frame {
|
|
long double tmp;
|
|
};
|
|
void bugme (int n, long double ld1, long double ld2, long double ld3,
|
|
long double ld4, long double ld5)
|
|
{
|
|
Frame f;
|
|
int i;
|
|
f.tmp = getme();
|
|
try {
|
|
for (i = 0; i < n; i++)
|
|
{
|
|
f.tmp += 1.0;
|
|
}
|
|
} catch (...) {
|
|
f.tmp += 1.0;
|
|
}
|
|
ld1++;
|
|
ld2++;
|
|
ld3++;
|
|
ld4++;
|
|
ld5++;
|
|
useme (f.tmp);
|
|
}
|