URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 305 |
Rev 338 |
// { dg-do run }
|
// { dg-do run }
|
// g++ 1.36.1 bug 900212_03
|
// g++ 1.36.1 bug 900212_03
|
|
|
// g++ segfaults on any attempt to use the ->* operator.
|
// g++ segfaults on any attempt to use the ->* operator.
|
|
|
// Cfront 2.0 passes this test.
|
// Cfront 2.0 passes this test.
|
|
|
// keywords: member pointers, operator->*
|
// keywords: member pointers, operator->*
|
|
|
struct struct0 {
|
struct struct0 {
|
int data_member;
|
int data_member;
|
void function_member ();
|
void function_member ();
|
};
|
};
|
|
|
void struct0::function_member ()
|
void struct0::function_member ()
|
{
|
{
|
}
|
}
|
|
|
int i;
|
int i;
|
|
|
int struct0::*dmp;
|
int struct0::*dmp;
|
void (struct0::*fmp) ();
|
void (struct0::*fmp) ();
|
|
|
struct0 *ptr;
|
struct0 *ptr;
|
|
|
void global_function_0 ()
|
void global_function_0 ()
|
{
|
{
|
i = ptr->*dmp; // causes segfault
|
i = ptr->*dmp; // causes segfault
|
(ptr->*fmp) (); // causes segfault
|
(ptr->*fmp) (); // causes segfault
|
// i = ptr->*(&struct0::data_member); // too complicated for cfront
|
// i = ptr->*(&struct0::data_member); // too complicated for cfront
|
// (ptr->*(&struct0::function_member)) (); // too complicated for cfront
|
// (ptr->*(&struct0::function_member)) (); // too complicated for cfront
|
}
|
}
|
|
|
int main () { return 0; }
|
int main () { return 0; }
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.