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 }
|
// g++ 1.36.1 bug 900213_03
|
// g++ 1.36.1 bug 900213_03
|
|
|
// g++ fails to detect an error when the address of a "bound" function is
|
// g++ fails to detect an error when the address of a "bound" function is
|
// assigned to a pointer-to-member-function variable.
|
// assigned to a pointer-to-member-function variable.
|
|
|
// It does however correctly detect a similar errors for data-members.
|
// It does however correctly detect a similar errors for data-members.
|
|
|
// keywords: bound function, operator&, member pointers
|
// keywords: bound function, operator&, member pointers
|
|
|
struct struct0 {
|
struct struct0 {
|
int data_member;
|
int data_member;
|
int function_member ();
|
int function_member ();
|
};
|
};
|
|
|
int i;
|
int i;
|
int struct0::*dmp;
|
int struct0::*dmp;
|
int (struct0::*fmp) ();
|
int (struct0::*fmp) ();
|
|
|
struct0 *ptr;
|
struct0 *ptr;
|
|
|
void global_function_0 ()
|
void global_function_0 ()
|
{
|
{
|
fmp = &ptr->function_member; // { dg-error "" }
|
fmp = &ptr->function_member; // { dg-error "" }
|
//dmp = &ptr->data_member; // caught by g++, missed by cfront
|
//dmp = &ptr->data_member; // caught by g++, missed by cfront
|
}
|
}
|
|
|
int main () { return 0; }
|
int main () { return 0; }
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.