From 0e4ff57c1c34f237edb0ac8c463ebad0acb4f7d0 Mon Sep 17 00:00:00 2001 From: Lukas Rytz Date: Thu, 12 Nov 2009 12:31:49 +0000 Subject: fix #2488. --- test/files/neg/names-defaults-neg.check | 49 ++++++++++++++++----------------- test/files/neg/names-defaults-neg.scala | 1 - 2 files changed, 23 insertions(+), 27 deletions(-) (limited to 'test/files/neg') diff --git a/test/files/neg/names-defaults-neg.check b/test/files/neg/names-defaults-neg.check index e47cf8c420..39347cd5db 100644 --- a/test/files/neg/names-defaults-neg.check +++ b/test/files/neg/names-defaults-neg.check @@ -1,4 +1,4 @@ -names-defaults-neg.scala:66: error: not enough arguments for method apply: (a: Int,b: String)(c: Int*)Fact in object Fact. +names-defaults-neg.scala:65: error: not enough arguments for method apply: (a: Int,b: String)(c: Int*)Fact in object Fact. Unspecified value parameter b. val fac = Fact(1)(2, 3) ^ @@ -8,87 +8,84 @@ names-defaults-neg.scala:5: error: type mismatch; test1(b = 2, a = "#") ^ names-defaults-neg.scala:8: error: positional after named argument. - test1(a = 1, "*") - ^ -names-defaults-neg.scala:9: error: positional after named argument. test1(b = "(*", 23) ^ -names-defaults-neg.scala:14: error: reference to x is ambiguous; it is both, a parameter +names-defaults-neg.scala:13: error: reference to x is ambiguous; it is both, a parameter name of the method and the name of a variable currently in scope. test2(x = 1) ^ -names-defaults-neg.scala:16: error: not found: value c +names-defaults-neg.scala:15: error: not found: value c test1(c = 0, b = "joke") ^ -names-defaults-neg.scala:17: error: not found: value m +names-defaults-neg.scala:16: error: not found: value m test7((m = 1)) // named arguments must be top-level assignments ^ -names-defaults-neg.scala:18: error: not found: value m +names-defaults-neg.scala:17: error: not found: value m test7({m = 1}) ^ -names-defaults-neg.scala:19: error: not found: value m +names-defaults-neg.scala:18: error: not found: value m test7 { m = 1 } // no named arguments in argument block ^ -names-defaults-neg.scala:20: error: reference to x is ambiguous; it is both, a parameter +names-defaults-neg.scala:19: error: reference to x is ambiguous; it is both, a parameter name of the method and the name of a variable currently in scope. test8(x = 1) ^ -names-defaults-neg.scala:23: error: parameter specified twice: a +names-defaults-neg.scala:22: error: parameter specified twice: a test1(1, a = 2) ^ -names-defaults-neg.scala:24: error: parameter specified twice: b +names-defaults-neg.scala:23: error: parameter specified twice: b test1(b = 1, b = "2") ^ -names-defaults-neg.scala:27: error: { +names-defaults-neg.scala:26: error: { val x$1: Int(3) = 3; val x$2: Int(1) = 1; Test.this.test3(1, 3) } of type Int does not take parameters test3(b = 3, a = 1)(3) ^ -names-defaults-neg.scala:36: error: ambiguous reference to overloaded definition, +names-defaults-neg.scala:35: error: ambiguous reference to overloaded definition, both method f in object t1 of type (b: String,a: Int)java.lang.String and method f in object t1 of type (a: Int,b: String)java.lang.String match argument types (b: java.lang.String,a: Int) t1.f(b = "dkljf", a = 1) ^ -names-defaults-neg.scala:43: error: ambiguous reference to overloaded definition, +names-defaults-neg.scala:42: error: ambiguous reference to overloaded definition, both method f in object t3 of type (a2: Int)(b: Int)java.lang.String and method f in object t3 of type (a1: Int)java.lang.String match argument types (Int) t3.f(1) ^ -names-defaults-neg.scala:44: error: ambiguous reference to overloaded definition, +names-defaults-neg.scala:43: error: ambiguous reference to overloaded definition, both method f in object t3 of type (a2: Int)(b: Int)java.lang.String and method f in object t3 of type (a1: Int)java.lang.String match argument types (Int) t3.f(1)(2) ^ -names-defaults-neg.scala:50: error: ambiguous reference to overloaded definition, +names-defaults-neg.scala:49: error: ambiguous reference to overloaded definition, both method g in object t7 of type (a: B)java.lang.String and method g in object t7 of type (a: C,b: Int*)java.lang.String match argument types (C) t7.g(new C()) // ambigous reference ^ -names-defaults-neg.scala:54: error: parameter specified twice: b +names-defaults-neg.scala:53: error: parameter specified twice: b test5(a = 1, b = "dkjl", b = "dkj") ^ -names-defaults-neg.scala:55: error: parameter specified twice: b +names-defaults-neg.scala:54: error: parameter specified twice: b test5(1, "2", b = 3) ^ -names-defaults-neg.scala:56: error: when using named arguments, the vararg parameter has to be specified exactly once +names-defaults-neg.scala:55: error: when using named arguments, the vararg parameter has to be specified exactly once test5(b = "dlkj") ^ -names-defaults-neg.scala:62: error: ambiguous reference to overloaded definition, +names-defaults-neg.scala:61: error: ambiguous reference to overloaded definition, both method f in object t8 of type (b: String,a: Int)java.lang.String and method f in object t8 of type (a: Int,b: java.lang.Object)java.lang.String match argument types (a: Int,b: java.lang.String) and expected result type Any println(t8.f(a = 0, b = "1")) // ambigous reference ^ -names-defaults-neg.scala:70: error: wrong number of arguments for : (x: Int,y: String)A1 +names-defaults-neg.scala:69: error: wrong number of arguments for : (x: Int,y: String)A1 A1() match { case A1(_) => () } ^ -names-defaults-neg.scala:77: error: no type parameters for method test4: (x: T[T[List[T[X forSome { type X }]]]])T[T[List[T[X forSome { type X }]]]] exist so that it can be applied to arguments (List[Int]) +names-defaults-neg.scala:76: error: no type parameters for method test4: (x: T[T[List[T[X forSome { type X }]]]])T[T[List[T[X forSome { type X }]]]] exist so that it can be applied to arguments (List[Int]) --- because --- argument expression's type is not compatible with formal parameter type; found : List[Int] @@ -96,15 +93,15 @@ argument expression's type is not compatible with formal parameter type; Error occured in an application involving default arguments. test4() ^ -names-defaults-neg.scala:80: error: type mismatch; +names-defaults-neg.scala:79: error: type mismatch; found : List[Int] required: scala.List[scala.List[?]] def test6[T](x: List[List[T]] = List(1,2)) = x ^ -names-defaults-neg.scala:83: error: type mismatch; +names-defaults-neg.scala:82: error: type mismatch; found : Int required: String Error occured in an application involving default arguments. new A2[String]() ^ -25 errors found +24 errors found diff --git a/test/files/neg/names-defaults-neg.scala b/test/files/neg/names-defaults-neg.scala index 5829da361c..3babd56c6f 100644 --- a/test/files/neg/names-defaults-neg.scala +++ b/test/files/neg/names-defaults-neg.scala @@ -5,7 +5,6 @@ object Test extends Application { test1(b = 2, a = "#") // mixing named and positional - test1(a = 1, "*") test1(b = "(*", 23) // assignment / names -- cgit v1.2.3