От: | _NN_ | www.nemerleweb.com | |
Дата: | 03.11.13 12:04 | ||
Оценка: |
module Program
{
F[T1](_ : Action[T1]) : void {}
F[T1,R](_ : Func[T1, R]) : void {}
Main() : void
{
F( (a:int)=>{} );
}
}
module Program
{
//F[T1](_ : T1 -> void) : void {}
F[T1,R](_ : T1 -> R) : void {}
Main() : void
{
F( (a:int)=>{} );
}
}
error : cannot use `void' in generic specifier [int, void] of method Program.F(_N_wildcard_3685 : T1 -> R) : void
module Program
{
F[T1](_ : T1 -> void) : void {}
F[T1,R](_ : T1 -> R) : void {}
Main() : void
{
F( (a:int)=>{} );
}
}
error : typing fails on ambiguity between overloads:
warning : hint: Posible overload: method Program.F(_N_wildcard_3685 : T1 -> void) : void
warning : hint: overload definition
warning : hint: Posible overload: method Program.F(_N_wildcard_3686 : T1 -> R) : void
warning : hint: overload definition