[#1156] | project: compiler | priority: low | category: missing feature | |
---|---|---|---|---|
submitter | assigned to | status | date submitted | |
Nikolay | Martin | noise | 2007-05-30 13:29:19.0 | |
subject | [contrib #586] type inference with multiple ParamClauses | |||
code |
// In a call of s[T](x: T)(y: T) // the type of argument y isn't being considered when determining T // Perhaps this is intentional, I'm not sure. class B {} class D extends B {} object Test extends Application { def p[T](y: T, x: T): Unit = {} def q[T](y: T)(x: T): Unit = {} def r[T](x: T, y: T): Unit = {} def s[T](x: T)(y: T): Unit = {} val b = new B val d = new D p(b, d) q(b)(d) r(d, b) s(d)(b) } |
|||
what happened | error: type mismatch; found : B required: D s(d)(b) ^ |
|||
what expected | successful compilation | |||
[back to overview] |
Nikolay edited on 2007-05-30 13:29:41.0 |
Martin edited on 2007-05-30 18:21:08.0 |
It is intentional. For a curried application only the first parameter list counts. |