And a related question:
class A
{
void foo(int i){}
void foo(Tuple!(int) i){}
}
class B: A
{
override void foo(int i){}
}
int main()
{
auto b = new B;
b.foo(tuple(5));
}
This fails to compile. Why can't B use A's tuple overload of
foo()? If I do this:
class B: A
{
override void foo(int i){}
void foo(Tuple!(int) i){} // no override keyword is deprecated
}
The compiler warns about not using the override keyword, so it
must be seeing the function?
