OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.old-deja/] [g++.bugs/] [900213_03.C] - Diff between revs 305 and 338

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; }
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.