URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 305 |
Rev 338 |
// { dg-do assemble }
|
// { dg-do assemble }
|
// { dg-options "-O2" }
|
// { dg-options "-O2" }
|
|
|
struct X {};
|
struct X {};
|
|
|
struct Y
|
struct Y
|
{
|
{
|
Y();
|
Y();
|
virtual ~Y();
|
virtual ~Y();
|
};
|
};
|
|
|
struct Z
|
struct Z
|
{
|
{
|
int f (const int *x);
|
int f (const int *x);
|
int g;
|
int g;
|
};
|
};
|
|
|
inline int
|
inline int
|
operator<< (Z &os, int x)
|
operator<< (Z &os, int x)
|
{
|
{
|
os.f (&x);
|
os.f (&x);
|
return os.g;
|
return os.g;
|
}
|
}
|
|
|
void foo (Z &a, X *b, X &c)
|
void foo (Z &a, X *b, X &c)
|
{
|
{
|
X *d = b;
|
X *d = b;
|
int e = 0;
|
int e = 0;
|
Z &f = a;
|
Z &f = a;
|
if (!(f << e))
|
if (!(f << e))
|
do { do { } while (&c == 0); throw Y(); } while (0);
|
do { do { } while (&c == 0); throw Y(); } while (0);
|
do { } while (&d == 0);
|
do { } while (&d == 0);
|
do { } while (&c == 0);
|
do { } while (&c == 0);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.