digitalmars.D.bugs - auto bud w/ overloaded function pointers
- 
BCS
 (34/34)
 Nov 26 2005
 
<code>
/***
The type of the function pointers and delegates are ambiguous.
***/
void main()
{
S s;
int delegate(int) dlp_i = &s.fn;
int delegate()    dlp_v = &s.fn;
auto dlp_x = &s.fn;
dlp_i(1);  // works
dlp_v();   // works
dlp_x();   // what type is dlp_x ??
dlp_x(1);  // it depends in the order of fn's in S
// same problem with fn ptrs
int function(int) fnp_i = &fn;
int function()    fnp_v = &fn;
auto fnp_x = &fn;
fnp_i(1);  // works
fnp_v();   // works
fnp_x();   // what type is fnp_x ??
fnp_x(1);  // it depends in the order of fn's in S
}
struct S
{
int j;
// swap these to change the type of dlp_x
int fn()      { j = 0; return j; }
int fn(int i) { j = i; return j; }
}
// swap these to change the type of fnp_x
int fn(int i) { return i; }
int fn()      { return 0; }
</code>
 Nov 26 2005








 
  
  
  BCS <BCS_member pathlink.com>
 BCS <BCS_member pathlink.com>