URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 154 |
Rev 816 |
// PR tree-opt/18040
|
// PR tree-opt/18040
|
// { dg-do compile }
|
// { dg-do compile }
|
// { dg-options "-O3" }
|
// { dg-options "-O3" }
|
|
|
int PyObject_IsTrue();
|
int PyObject_IsTrue();
|
struct object_base
|
struct object_base
|
{
|
{
|
void ptr() const;
|
void ptr() const;
|
void ptr1() const;
|
void ptr1() const;
|
};
|
};
|
struct object : public object_base
|
struct object : public object_base
|
{
|
{
|
typedef void (object::*bool_type)() const;
|
typedef void (object::*bool_type)() const;
|
inline operator bool_type() const
|
inline operator bool_type() const
|
{ return PyObject_IsTrue()
|
{ return PyObject_IsTrue()
|
? &object_base::ptr : &object::ptr1; }
|
? &object_base::ptr : &object::ptr1; }
|
};
|
};
|
void f();
|
void f();
|
void g (void)
|
void g (void)
|
{
|
{
|
for (unsigned n = 0; n < 100; ++n)
|
for (unsigned n = 0; n < 100; ++n)
|
{
|
{
|
object kv;
|
object kv;
|
if (kv)
|
if (kv)
|
f();
|
f();
|
}
|
}
|
}
|
}
|
|
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.