ptrmem3.C: New test.
* g++.dg/opt/ptrmem3.C: New test. * g++.old-deja/g++.pt/overload8.C: Remove XFAIL. From-SVN: r70851
This commit is contained in:
parent
036e07f263
commit
031b59ce35
3 changed files with 30 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
2003-08-27 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
* g++.dg/opt/ptrmem3.C: New test.
|
||||
|
||||
* g++.old-deja/g++.pt/overload8.C: Remove XFAIL.
|
||||
|
||||
2003-08-27 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* gcc.dg/20030826-2.c: New test.
|
||||
|
|
23
gcc/testsuite/g++.dg/opt/ptrmem3.C
Normal file
23
gcc/testsuite/g++.dg/opt/ptrmem3.C
Normal file
|
@ -0,0 +1,23 @@
|
|||
// { dg-options "-O1" }
|
||||
|
||||
#include <stdio.h>
|
||||
struct A {
|
||||
A(int arg) : ia(arg) {}
|
||||
int x,y,z,ia;
|
||||
int mf(int arg) { return arg + ia; }
|
||||
};
|
||||
int func(int A::*pdm, int (A::*pmf)(int)) // 2. regular function
|
||||
{
|
||||
A oa(2);
|
||||
return ((&oa)->*pdm) + (oa.*pmf)(2);
|
||||
}
|
||||
int main()
|
||||
{
|
||||
int val;
|
||||
|
||||
int A::*pda = &A::ia;
|
||||
int (A::*pmfa)(int) = &A::mf;
|
||||
val = func( pda, pmfa );
|
||||
if(val != 6)
|
||||
printf("val=%d, expect 6 \n", val);
|
||||
}
|
|
@ -7,6 +7,6 @@ struct baz;
|
|||
void operator*(baz&, double);
|
||||
|
||||
template <class T> inline T operator*(double s, const T &p)
|
||||
; // { dg-bogus "" "" { xfail *-*-* } } - must have argument of class type -
|
||||
; // { dg-bogus "" "" } - must have argument of class type -
|
||||
|
||||
void m(baz& a) { a * .5; }
|
||||
|
|
Loading…
Add table
Reference in a new issue