mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-02-23 21:59:54 +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