Inconsistent processing of generic ParamArray argument in F#
问题 Being spotted in context of this question this seemingly inconsistent behavior can be reproduced as following both in F#2.0 and F#3.0 RC: type Heterogeneous = static member Echo([<ParamArray>] args: Object[]) = args type Generic = static member Echo<'T>([<ParamArray>] args: 'T[]) = args Usage: Returns: Heterogeneous.Echo 0 // [|0|] OK Generic.Echo 0 // [|0|] OK Heterogeneous.Echo (0,1) // [|0; 1|] OK Generic.Echo (0,1) // [|0; 1|] OK Heterogeneous.Echo [|0|] // [|[|0|]|] OK? Generic.Echo [|0|