URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 149 |
Rev 154 |
// Test PR 17517. Test case provided by Serge Belyshev.
|
// Test PR 17517. Test case provided by Serge Belyshev.
|
|
|
/* { dg-do compile } */
|
/* { dg-do compile } */
|
/* { dg-options "-O2" } */
|
/* { dg-options "-O2" } */
|
|
|
|
|
extern void foo ();
|
extern void foo ();
|
|
|
struct Ptr {
|
struct Ptr {
|
int * ptr;
|
int * ptr;
|
Ptr () { ptr = 0; }
|
Ptr () { ptr = 0; }
|
~Ptr() { delete ptr; }
|
~Ptr() { delete ptr; }
|
Ptr &operator= (int * p) { ptr = p; return *this; }
|
Ptr &operator= (int * p) { ptr = p; return *this; }
|
};
|
};
|
|
|
int *new_checker () { foo (); return 0; }
|
int *new_checker () { foo (); return 0; }
|
|
|
void pipe (int c)
|
void pipe (int c)
|
{
|
{
|
Ptr checker;
|
Ptr checker;
|
|
|
foo ();
|
foo ();
|
for (;;)
|
for (;;)
|
{
|
{
|
switch (c)
|
switch (c)
|
{
|
{
|
case '-':
|
case '-':
|
checker = new_checker ();
|
checker = new_checker ();
|
break;
|
break;
|
}
|
}
|
}
|
}
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.