diff options
-rw-r--r-- | tests/neg/applydynamic_sip.check | 52 | ||||
-rw-r--r-- | tests/neg/applydynamic_sip.flags (renamed from tests/untried/neg/applydynamic_sip.flags) | 0 | ||||
-rw-r--r-- | tests/neg/applydynamic_sip.scala | 36 | ||||
-rw-r--r-- | tests/neg/t6355b.check (renamed from tests/untried/neg/t6355b.check) | 4 | ||||
-rw-r--r-- | tests/neg/t6355b.scala (renamed from tests/untried/neg/t6355b.scala) | 4 | ||||
-rw-r--r-- | tests/neg/t6920.check (renamed from tests/untried/neg/t6920.check) | 2 | ||||
-rw-r--r-- | tests/neg/t6920.scala (renamed from tests/untried/neg/t6920.scala) | 2 | ||||
-rw-r--r-- | tests/neg/t8006.check (renamed from tests/untried/neg/t8006.check) | 2 | ||||
-rw-r--r-- | tests/neg/t8006.scala (renamed from tests/untried/neg/t8006.scala) | 2 | ||||
-rw-r--r-- | tests/run/dynamic-anyval.check (renamed from tests/pending/run/dynamic-anyval.check) | 0 | ||||
-rw-r--r-- | tests/run/dynamic-anyval.scala (renamed from tests/pending/run/dynamic-anyval.scala) | 0 | ||||
-rw-r--r-- | tests/run/t4536.check (renamed from tests/pending/run/t4536.check) | 0 | ||||
-rw-r--r-- | tests/run/t4536.flags (renamed from tests/pending/run/t4536.flags) | 0 | ||||
-rw-r--r-- | tests/run/t4536.scala (renamed from tests/pending/run/t4536.scala) | 8 | ||||
-rw-r--r-- | tests/run/t5733.check (renamed from tests/pending/run/t5733.check) | 0 | ||||
-rw-r--r-- | tests/run/t5733.scala (renamed from tests/pending/run/t5733.scala) | 0 | ||||
-rw-r--r-- | tests/run/t6355.check (renamed from tests/pending/run/t6355.check) | 0 | ||||
-rw-r--r-- | tests/run/t6355.scala (renamed from tests/pending/run/t6355.scala) | 0 | ||||
-rw-r--r-- | tests/run/t6663.check (renamed from tests/pending/run/t6663.check) | 0 | ||||
-rw-r--r-- | tests/run/t6663.flags (renamed from tests/pending/run/t6663.flags) | 0 | ||||
-rw-r--r-- | tests/run/t6663.scala (renamed from tests/pending/run/t6663.scala) | 0 | ||||
-rw-r--r-- | tests/untried/neg/applydynamic_sip.check | 73 | ||||
-rw-r--r-- | tests/untried/neg/applydynamic_sip.scala | 33 |
23 files changed, 98 insertions, 120 deletions
diff --git a/tests/neg/applydynamic_sip.check b/tests/neg/applydynamic_sip.check new file mode 100644 index 000000000..1bd8304bf --- /dev/null +++ b/tests/neg/applydynamic_sip.check @@ -0,0 +1,52 @@ +tests/neg/applydynamic_sip.scala:8: error: value applyDynamic is not a member of Dynamic(Test.qual) +possible cause: maybe a wrong Dynamic method signature? + qual.sel(a, a2: _*) // error + ^ +tests/neg/applydynamic_sip.scala:9: error: applyDynamicNamed does not support passing a vararg parameter + qual.sel(arg = a, a2: _*) // error + ^ +tests/neg/applydynamic_sip.scala:10: error: applyDynamicNamed does not support passing a vararg parameter + qual.sel(arg, arg2 = "a2", a2: _*) // error + ^ +tests/neg/applydynamic_sip.scala:20: error: type mismatch: + found : String("sel") + required: Int + bad1.sel // error + ^ +tests/neg/applydynamic_sip.scala:21: error: type mismatch: + found : String("sel") + required: Int + bad1.sel(1) // error // error + ^ +tests/neg/applydynamic_sip.scala:21: error: method applyDynamic in class Bad1 does not take more parameters + bad1.sel(1) // error // error + ^ +tests/neg/applydynamic_sip.scala:22: error: type mismatch: + found : String("sel") + required: Int + bad1.sel(a = 1) // error // error + ^ +tests/neg/applydynamic_sip.scala:22: error: method applyDynamicNamed in class Bad1 does not take more parameters + bad1.sel(a = 1) // error // error + ^ +tests/neg/applydynamic_sip.scala:23: error: type mismatch: + found : String("sel") + required: Int + bad1.sel = 1 // error // error + ^ +tests/neg/applydynamic_sip.scala:23: error: method updateDynamic in class Bad1 does not take more parameters + bad1.sel = 1 // error // error + ^ +tests/neg/applydynamic_sip.scala:32: error: method selectDynamic in class Bad2 does not take parameters + bad2.sel // error + ^ +tests/neg/applydynamic_sip.scala:33: error: method applyDynamic in class Bad2 does not take parameters + bad2.sel(1) // error + ^ +tests/neg/applydynamic_sip.scala:34: error: method applyDynamicNamed in class Bad2 does not take parameters + bad2.sel(a = 1) // error + ^ +tests/neg/applydynamic_sip.scala:35: error: method updateDynamic in class Bad2 does not take parameters + bad2.sel = 1 // error + ^ +14 errors found diff --git a/tests/untried/neg/applydynamic_sip.flags b/tests/neg/applydynamic_sip.flags index 1141f9750..1141f9750 100644 --- a/tests/untried/neg/applydynamic_sip.flags +++ b/tests/neg/applydynamic_sip.flags diff --git a/tests/neg/applydynamic_sip.scala b/tests/neg/applydynamic_sip.scala new file mode 100644 index 000000000..7b131e7ff --- /dev/null +++ b/tests/neg/applydynamic_sip.scala @@ -0,0 +1,36 @@ +import scala.language.dynamics +object Test extends App { + val qual: Dynamic = ??? + val expr = "expr" + val a = "a" + val a2 = "a2" + + qual.sel(a, a2: _*) // error + qual.sel(arg = a, a2: _*) // error + qual.sel(arg, arg2 = "a2", a2: _*) // error + + class Bad1 extends Dynamic { + def selectDynamic(n: Int) = n + def applyDynamic(n: Int) = n + def applyDynamicNamed(n: Int) = n + def updateDynamic(n: Int) = n + + } + val bad1 = new Bad1 + bad1.sel // error + bad1.sel(1) // error // error + bad1.sel(a = 1) // error // error + bad1.sel = 1 // error // error + + class Bad2 extends Dynamic { + def selectDynamic = 1 + def applyDynamic = 1 + def applyDynamicNamed = 1 + def updateDynamic = 1 + } + val bad2 = new Bad2 + bad2.sel // error + bad2.sel(1) // error + bad2.sel(a = 1) // error + bad2.sel = 1 // error +} diff --git a/tests/untried/neg/t6355b.check b/tests/neg/t6355b.check index f827f07e5..fb73b9c42 100644 --- a/tests/untried/neg/t6355b.check +++ b/tests/neg/t6355b.check @@ -1,11 +1,11 @@ t6355b.scala:14: error: value applyDynamic is not a member of A error after rewriting to x.<applyDynamic: error>("bippy") possible cause: maybe a wrong Dynamic method signature? - println(x.bippy(42)) + println(x.bippy(42)) // error ^ t6355b.scala:15: error: value applyDynamic is not a member of A error after rewriting to x.<applyDynamic: error>("bippy") possible cause: maybe a wrong Dynamic method signature? - println(x.bippy("42")) + println(x.bippy("42")) // error ^ two errors found diff --git a/tests/untried/neg/t6355b.scala b/tests/neg/t6355b.scala index 5f3c97cb0..bba3c4fdc 100644 --- a/tests/untried/neg/t6355b.scala +++ b/tests/neg/t6355b.scala @@ -11,7 +11,7 @@ class B(method: String) { object Test { def main(args: Array[String]): Unit = { val x = new A - println(x.bippy(42)) - println(x.bippy("42")) + println(x.bippy(42)) // error + println(x.bippy("42")) // error } } diff --git a/tests/untried/neg/t6920.check b/tests/neg/t6920.check index ee4eafb83..8bfd16a5f 100644 --- a/tests/untried/neg/t6920.check +++ b/tests/neg/t6920.check @@ -1,6 +1,6 @@ t6920.scala:9: error: too many arguments for method applyDynamicNamed: (values: Seq[(String, Any)])String error after rewriting to CompilerError.this.test.applyDynamicNamed("crushTheCompiler")(scala.Tuple2("a", 1), scala.Tuple2("b", 2)) possible cause: maybe a wrong Dynamic method signature? - test.crushTheCompiler(a = 1, b = 2) + test.crushTheCompiler(a = 1, b = 2) // error ^ one error found diff --git a/tests/untried/neg/t6920.scala b/tests/neg/t6920.scala index 25dc7b3b6..9601ed8d2 100644 --- a/tests/untried/neg/t6920.scala +++ b/tests/neg/t6920.scala @@ -6,5 +6,5 @@ class DynTest extends Dynamic { class CompilerError { val test = new DynTest - test.crushTheCompiler(a = 1, b = 2) + test.crushTheCompiler(a = 1, b = 2) // error } diff --git a/tests/untried/neg/t8006.check b/tests/neg/t8006.check index fbac26e3a..98207ba30 100644 --- a/tests/untried/neg/t8006.check +++ b/tests/neg/t8006.check @@ -1,6 +1,6 @@ t8006.scala:3: error: too many arguments for method applyDynamicNamed: (value: (String, Any))String error after rewriting to X.this.d.applyDynamicNamed("meth")(scala.Tuple2("value1", 10), scala.Tuple2("value2", 100)) possible cause: maybe a wrong Dynamic method signature? - d.meth(value1 = 10, value2 = 100) // two arguments here, but only one is allowed + d.meth(value1 = 10, value2 = 100) // error: two arguments here, but only one is allowed ^ one error found diff --git a/tests/untried/neg/t8006.scala b/tests/neg/t8006.scala index 8dc60697d..34946a659 100644 --- a/tests/untried/neg/t8006.scala +++ b/tests/neg/t8006.scala @@ -1,6 +1,6 @@ object X { val d = new D - d.meth(value1 = 10, value2 = 100) // two arguments here, but only one is allowed + d.meth(value1 = 10, value2 = 100) // error: two arguments here, but only one is allowed } import language.dynamics class D extends Dynamic { diff --git a/tests/pending/run/dynamic-anyval.check b/tests/run/dynamic-anyval.check index dee7bef8e..dee7bef8e 100644 --- a/tests/pending/run/dynamic-anyval.check +++ b/tests/run/dynamic-anyval.check diff --git a/tests/pending/run/dynamic-anyval.scala b/tests/run/dynamic-anyval.scala index 605503d37..605503d37 100644 --- a/tests/pending/run/dynamic-anyval.scala +++ b/tests/run/dynamic-anyval.scala diff --git a/tests/pending/run/t4536.check b/tests/run/t4536.check index 0c5a72ada..0c5a72ada 100644 --- a/tests/pending/run/t4536.check +++ b/tests/run/t4536.check diff --git a/tests/pending/run/t4536.flags b/tests/run/t4536.flags index 1141f9750..1141f9750 100644 --- a/tests/pending/run/t4536.flags +++ b/tests/run/t4536.flags diff --git a/tests/pending/run/t4536.scala b/tests/run/t4536.scala index 6661eae6a..89a93a5e0 100644 --- a/tests/pending/run/t4536.scala +++ b/tests/run/t4536.scala @@ -1,8 +1,4 @@ - - - - - +import scala.language.dynamics object dynamicObject extends Dynamic { def applyDynamic(m: String)() = println("obj: " + m); @@ -38,7 +34,7 @@ object dynamicMixin extends dynamicAbstractClass with dynamicTrait { object Test { - def main(args: Array[String]) { + def main(args: Array[String]) = { val cls = new dynamicClass dynamicMixin } diff --git a/tests/pending/run/t5733.check b/tests/run/t5733.check index e697046a9..e697046a9 100644 --- a/tests/pending/run/t5733.check +++ b/tests/run/t5733.check diff --git a/tests/pending/run/t5733.scala b/tests/run/t5733.scala index a9e58d77e..a9e58d77e 100644 --- a/tests/pending/run/t5733.scala +++ b/tests/run/t5733.scala diff --git a/tests/pending/run/t6355.check b/tests/run/t6355.check index ce74ab38a..ce74ab38a 100644 --- a/tests/pending/run/t6355.check +++ b/tests/run/t6355.check diff --git a/tests/pending/run/t6355.scala b/tests/run/t6355.scala index f1921391a..f1921391a 100644 --- a/tests/pending/run/t6355.scala +++ b/tests/run/t6355.scala diff --git a/tests/pending/run/t6663.check b/tests/run/t6663.check index d81cc0710..d81cc0710 100644 --- a/tests/pending/run/t6663.check +++ b/tests/run/t6663.check diff --git a/tests/pending/run/t6663.flags b/tests/run/t6663.flags index ea7fc37e1..ea7fc37e1 100644 --- a/tests/pending/run/t6663.flags +++ b/tests/run/t6663.flags diff --git a/tests/pending/run/t6663.scala b/tests/run/t6663.scala index bfe464ad6..bfe464ad6 100644 --- a/tests/pending/run/t6663.scala +++ b/tests/run/t6663.scala diff --git a/tests/untried/neg/applydynamic_sip.check b/tests/untried/neg/applydynamic_sip.check deleted file mode 100644 index 2cb2e7f09..000000000 --- a/tests/untried/neg/applydynamic_sip.check +++ /dev/null @@ -1,73 +0,0 @@ -applydynamic_sip.scala:7: error: applyDynamic does not support passing a vararg parameter - qual.sel(a, a2: _*) - ^ -applydynamic_sip.scala:8: error: applyDynamicNamed does not support passing a vararg parameter - qual.sel(arg = a, a2: _*) - ^ -applydynamic_sip.scala:8: error: not found: value arg - qual.sel(arg = a, a2: _*) - ^ -applydynamic_sip.scala:9: error: applyDynamicNamed does not support passing a vararg parameter - qual.sel(arg, arg2 = "a2", a2: _*) - ^ -applydynamic_sip.scala:9: error: not found: value arg - qual.sel(arg, arg2 = "a2", a2: _*) - ^ -applydynamic_sip.scala:9: error: not found: value arg2 - qual.sel(arg, arg2 = "a2", a2: _*) - ^ -applydynamic_sip.scala:18: error: type mismatch; - found : String("sel") - required: Int -error after rewriting to Test.this.bad1.selectDynamic("sel") -possible cause: maybe a wrong Dynamic method signature? - bad1.sel - ^ -applydynamic_sip.scala:19: error: type mismatch; - found : String("sel") - required: Int -error after rewriting to Test.this.bad1.applyDynamic("sel") -possible cause: maybe a wrong Dynamic method signature? - bad1.sel(1) - ^ -applydynamic_sip.scala:20: error: type mismatch; - found : String("sel") - required: Int -error after rewriting to Test.this.bad1.applyDynamicNamed("sel") -possible cause: maybe a wrong Dynamic method signature? - bad1.sel(a = 1) - ^ -applydynamic_sip.scala:20: error: reassignment to val - bad1.sel(a = 1) - ^ -applydynamic_sip.scala:21: error: type mismatch; - found : String("sel") - required: Int -error after rewriting to Test.this.bad1.updateDynamic("sel") -possible cause: maybe a wrong Dynamic method signature? - bad1.sel = 1 - ^ -applydynamic_sip.scala:29: error: Int does not take parameters -error after rewriting to Test.this.bad2.selectDynamic("sel") -possible cause: maybe a wrong Dynamic method signature? - bad2.sel - ^ -applydynamic_sip.scala:30: error: Int does not take parameters -error after rewriting to Test.this.bad2.applyDynamic("sel") -possible cause: maybe a wrong Dynamic method signature? - bad2.sel(1) - ^ -applydynamic_sip.scala:31: error: Int does not take parameters -error after rewriting to Test.this.bad2.applyDynamicNamed("sel") -possible cause: maybe a wrong Dynamic method signature? - bad2.sel(a = 1) - ^ -applydynamic_sip.scala:31: error: reassignment to val - bad2.sel(a = 1) - ^ -applydynamic_sip.scala:32: error: Int does not take parameters -error after rewriting to Test.this.bad2.updateDynamic("sel") -possible cause: maybe a wrong Dynamic method signature? - bad2.sel = 1 - ^ -16 errors found diff --git a/tests/untried/neg/applydynamic_sip.scala b/tests/untried/neg/applydynamic_sip.scala deleted file mode 100644 index ee4432ebe..000000000 --- a/tests/untried/neg/applydynamic_sip.scala +++ /dev/null @@ -1,33 +0,0 @@ -object Test extends App { - val qual: Dynamic = ??? - val expr = "expr" - val a = "a" - val a2 = "a2" - - qual.sel(a, a2: _*) - qual.sel(arg = a, a2: _*) - qual.sel(arg, arg2 = "a2", a2: _*) - - val bad1 = new Dynamic { - def selectDynamic(n: Int) = n - def applyDynamic(n: Int) = n - def applyDynamicNamed(n: Int) = n - def updateDynamic(n: Int) = n - - } - bad1.sel - bad1.sel(1) - bad1.sel(a = 1) - bad1.sel = 1 - - val bad2 = new Dynamic { - def selectDynamic = 1 - def applyDynamic = 1 - def applyDynamicNamed = 1 - def updateDynamic = 1 - } - bad2.sel - bad2.sel(1) - bad2.sel(a = 1) - bad2.sel = 1 -} |