mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-02-24 02:39:11 +08:00
New case from Klaus-Georg Adams.
From-SVN: r20557
This commit is contained in:
parent
cab634f2e9
commit
025b3f1485
30
gcc/testsuite/g++.old-deja/g++.robertl/eb131.C
Normal file
30
gcc/testsuite/g++.old-deja/g++.robertl/eb131.C
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
// Build don't link
|
||||||
|
// The call to a::foo() generates an error:
|
||||||
|
// eb131.C: In method `a::a()':
|
||||||
|
// eb131.C:26: no matching function for call to `a::foo (void (a::*)(double))'
|
||||||
|
// eb131.C:15: candidates are: a::foo(void (a::*)(float))
|
||||||
|
// According to [over.over] in the CD2, &junk should resolve in this context.
|
||||||
|
// From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de>
|
||||||
|
// Reported against EGCS snaps 98/06/18.
|
||||||
|
|
||||||
|
struct a {
|
||||||
|
a();
|
||||||
|
void junk();
|
||||||
|
void junk( int );
|
||||||
|
void junk( float );
|
||||||
|
void junk( double );
|
||||||
|
|
||||||
|
void foo( void (a::*member)(float) );
|
||||||
|
void bar( void (*function)(float) );
|
||||||
|
};
|
||||||
|
|
||||||
|
void baz();
|
||||||
|
void baz( int );
|
||||||
|
void baz( float );
|
||||||
|
void baz( double );
|
||||||
|
|
||||||
|
a::a()
|
||||||
|
{
|
||||||
|
foo( &junk );
|
||||||
|
bar( &baz );
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user