diff options
Diffstat (limited to 'tests/neg')
32 files changed, 291 insertions, 0 deletions
diff --git a/tests/neg/dynamicApplyDynamicTest1.scala b/tests/neg/dynamicApplyDynamicTest1.scala new file mode 100644 index 000000000..90f4493eb --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest1.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazApply() // error +} diff --git a/tests/neg/dynamicApplyDynamicTest2.scala b/tests/neg/dynamicApplyDynamicTest2.scala new file mode 100644 index 000000000..aa0e44405 --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest2.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazApply("abc", 1) // error +} diff --git a/tests/neg/dynamicApplyDynamicTest3.scala b/tests/neg/dynamicApplyDynamicTest3.scala new file mode 100644 index 000000000..61d3c9677 --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest3.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazApply _ // error // error +} diff --git a/tests/neg/dynamicApplyDynamicTest4.scala b/tests/neg/dynamicApplyDynamicTest4.scala new file mode 100644 index 000000000..4573bd08d --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest4.scala @@ -0,0 +1,10 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def selectDynamic(name: String): String = ??? + def applyDynamicNamed(name: String)(args: Any*): String = ??? +} + +object DynamicTest { + new Foo().bazApply() // error +} diff --git a/tests/neg/dynamicApplyDynamicTest5.scala b/tests/neg/dynamicApplyDynamicTest5.scala new file mode 100644 index 000000000..d1d9cdd69 --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest5.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamic(name: String)(args: String*): String = ??? +} + +object DynamicTest { + new Foo().bazApply(1, 2, 3) // error // error // error +} diff --git a/tests/neg/dynamicApplyDynamicTest6.scala b/tests/neg/dynamicApplyDynamicTest6.scala new file mode 100644 index 000000000..865858ff3 --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest6.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamic(name: String)(args: String*): String = ??? +} + +object DynamicTest { + def test: Int = new Foo().bazApply() // error +} diff --git a/tests/neg/dynamicApplyDynamicTest7.scala b/tests/neg/dynamicApplyDynamicTest7.scala new file mode 100644 index 000000000..7985dd09e --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest7.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamic(name: Int)(args: String*): String = ??? +} + +object DynamicTest { + def test: String = new Foo().bazApply() // error +} diff --git a/tests/neg/dynamicApplyDynamicTest8.scala b/tests/neg/dynamicApplyDynamicTest8.scala new file mode 100644 index 000000000..ee8192d76 --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest8.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamicNamed(name: String)(args: (String, Int)*): String = ??? +} + +object DynamicTest { + def test: String = new Foo().bazApply("1" -> 2) // error +} diff --git a/tests/neg/dynamicApplyDynamicTest9.scala b/tests/neg/dynamicApplyDynamicTest9.scala new file mode 100644 index 000000000..bc4f94d5e --- /dev/null +++ b/tests/neg/dynamicApplyDynamicTest9.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamicNamed(name: String)(args: (String, Int)*): String = ??? +} + +object DynamicTest { + new Foo().applyDynamic("bar")("1" -> 2) // error +} diff --git a/tests/neg/dynamicApplyNamedDynamicTest1.scala b/tests/neg/dynamicApplyNamedDynamicTest1.scala new file mode 100644 index 000000000..a51cd2c7b --- /dev/null +++ b/tests/neg/dynamicApplyNamedDynamicTest1.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazApply(a = "abc", b = 1) // error +} diff --git a/tests/neg/dynamicApplyNamedDynamicTest2.scala b/tests/neg/dynamicApplyNamedDynamicTest2.scala new file mode 100644 index 000000000..ca801e77c --- /dev/null +++ b/tests/neg/dynamicApplyNamedDynamicTest2.scala @@ -0,0 +1,10 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def selectDynamic(name: String): Array[String] = ??? + def applyDynamic(name: String)(args: Any*): String = ??? +} + +object DynamicTest { + new Foo().bazApply(a = "abc", b = 1) // error +} diff --git a/tests/neg/dynamicApplyNamedDynamicTest3.scala b/tests/neg/dynamicApplyNamedDynamicTest3.scala new file mode 100644 index 000000000..b8ec41c6d --- /dev/null +++ b/tests/neg/dynamicApplyNamedDynamicTest3.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazApply("abc", b = 1) // error +} diff --git a/tests/neg/dynamicApplyNamedDynamicTest4.scala b/tests/neg/dynamicApplyNamedDynamicTest4.scala new file mode 100644 index 000000000..983cbc599 --- /dev/null +++ b/tests/neg/dynamicApplyNamedDynamicTest4.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazApply("abc", 4, b = 1, b = "bcd") // error +} diff --git a/tests/neg/dynamicApplyNamedDynamicTest5.scala b/tests/neg/dynamicApplyNamedDynamicTest5.scala new file mode 100644 index 000000000..3a48d38d8 --- /dev/null +++ b/tests/neg/dynamicApplyNamedDynamicTest5.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamicNamed(name: String)(args: String*): String = ??? +} + +object DynamicTest { + new Foo().bazApply("abc", 4, b = 1, b = "bcd") // error // error // error // error +} diff --git a/tests/neg/dynamicApplyNamedDynamicTest6.scala b/tests/neg/dynamicApplyNamedDynamicTest6.scala new file mode 100644 index 000000000..4c39842af --- /dev/null +++ b/tests/neg/dynamicApplyNamedDynamicTest6.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamicNamed(name: Int)(args: Any*): String = ??? +} + +object DynamicTest { + new Foo().bazApply("abc", 4, b = 1, b = "bcd") // error +} diff --git a/tests/neg/dynamicApplyNamedDynamicTest7.scala b/tests/neg/dynamicApplyNamedDynamicTest7.scala new file mode 100644 index 000000000..c29339f6d --- /dev/null +++ b/tests/neg/dynamicApplyNamedDynamicTest7.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamicNamed(name: String)(args: Any*): String = ??? +} + +object DynamicTest { + def test: Int = new Foo().bazApply("abc", 4, b = 1, b = "bcd") // error +} diff --git a/tests/neg/dynamicApplyNamedDynamicTest8.scala b/tests/neg/dynamicApplyNamedDynamicTest8.scala new file mode 100644 index 000000000..e07b04ca1 --- /dev/null +++ b/tests/neg/dynamicApplyNamedDynamicTest8.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamic(name: String)(args: Any*): String = ??? +} + +object DynamicTest { + new Foo().applyDynamicNamed("abc")() // error +} diff --git a/tests/neg/dynamicDynamicImplicitsTest1.scala b/tests/neg/dynamicDynamicImplicitsTest1.scala new file mode 100644 index 000000000..b044336aa --- /dev/null +++ b/tests/neg/dynamicDynamicImplicitsTest1.scala @@ -0,0 +1,13 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def selectDynamic(name: String): String = ??? +} + +object DynamicTest { + implicit class Bar(foo: Foo) { + def bazSelect: Int = ??? + } + + def baz: String = new Foo().bazSelect // error +} diff --git a/tests/neg/dynamicDynamicImplicitsTest2.scala b/tests/neg/dynamicDynamicImplicitsTest2.scala new file mode 100644 index 000000000..3229d80e6 --- /dev/null +++ b/tests/neg/dynamicDynamicImplicitsTest2.scala @@ -0,0 +1,13 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamic(name: String)(args: Any*): String = ??? +} + +object DynamicTest { + implicit class Bar(foo: Foo) { + def bazApply: Int = ??? + } + + def baz: String = new Foo().bazApply("") // error +} diff --git a/tests/neg/dynamicDynamicImplicitsTest3.scala b/tests/neg/dynamicDynamicImplicitsTest3.scala new file mode 100644 index 000000000..6c26b9500 --- /dev/null +++ b/tests/neg/dynamicDynamicImplicitsTest3.scala @@ -0,0 +1,13 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applytDynamicNamed(name: String)(args: Any*): String = ??? +} + +object DynamicTest { + implicit class Bar(foo: Foo) { + def bazApply: Int = ??? + } + + def baz: String = new Foo().bazApply(a = "") // error +} diff --git a/tests/neg/dynamicNoImport.scala b/tests/neg/dynamicNoImport.scala new file mode 100644 index 000000000..c009d91a4 --- /dev/null +++ b/tests/neg/dynamicNoImport.scala @@ -0,0 +1,13 @@ +class Foo extends scala.Dynamic // error +trait Bar extends scala.Dynamic // error +object Baz extends scala.Dynamic // error + +package A { + import scala.language.dynamics + package B { + import scala.language.{ dynamics => _ } + class Foo extends scala.Dynamic // error + trait Bar extends scala.Dynamic // error + object Baz extends scala.Dynamic // error + } +} diff --git a/tests/neg/dynamicSelectDynamicTest1.scala b/tests/neg/dynamicSelectDynamicTest1.scala new file mode 100644 index 000000000..a45671ad1 --- /dev/null +++ b/tests/neg/dynamicSelectDynamicTest1.scala @@ -0,0 +1,10 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + def testSelect = { + new Foo().bazSelect // error + () + } +} diff --git a/tests/neg/dynamicSelectDynamicTest2.scala b/tests/neg/dynamicSelectDynamicTest2.scala new file mode 100644 index 000000000..9ba19a14d --- /dev/null +++ b/tests/neg/dynamicSelectDynamicTest2.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + def testSelect = new Foo().bazSelect // error +} diff --git a/tests/neg/dynamicSelectDynamicTest3.scala b/tests/neg/dynamicSelectDynamicTest3.scala new file mode 100644 index 000000000..acdad7033 --- /dev/null +++ b/tests/neg/dynamicSelectDynamicTest3.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazSelect // error +} diff --git a/tests/neg/dynamicSelectDynamicTest4.scala b/tests/neg/dynamicSelectDynamicTest4.scala new file mode 100644 index 000000000..7295a43fd --- /dev/null +++ b/tests/neg/dynamicSelectDynamicTest4.scala @@ -0,0 +1,11 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def selectDynamic(name: String): String = ??? +} + +object DynamicTest { + def testSelect: Int = { + new Foo().bazSelect // error + } +} diff --git a/tests/neg/dynamicSelectDynamicTest5.scala b/tests/neg/dynamicSelectDynamicTest5.scala new file mode 100644 index 000000000..17836efe4 --- /dev/null +++ b/tests/neg/dynamicSelectDynamicTest5.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazSelectUpdate(6) = "a" // error +} diff --git a/tests/neg/dynamicSelectDynamicTest6.scala b/tests/neg/dynamicSelectDynamicTest6.scala new file mode 100644 index 000000000..8df9bf492 --- /dev/null +++ b/tests/neg/dynamicSelectDynamicTest6.scala @@ -0,0 +1,11 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def selectDynamic(name: Int): String = ??? +} + +object DynamicTest { + def testSelect: String = { + new Foo().bazSelect // error + } +} diff --git a/tests/neg/dynamicSelectDynamicTest7.scala b/tests/neg/dynamicSelectDynamicTest7.scala new file mode 100644 index 000000000..4b4207844 --- /dev/null +++ b/tests/neg/dynamicSelectDynamicTest7.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def applyDynamic(name: String)(args: Any*): String = ??? +} + +object DynamicTest { + new Foo().selectDynamic("bar") // error +} diff --git a/tests/neg/dynamicUpdateDynamicTest1.scala b/tests/neg/dynamicUpdateDynamicTest1.scala new file mode 100644 index 000000000..8eba9fe60 --- /dev/null +++ b/tests/neg/dynamicUpdateDynamicTest1.scala @@ -0,0 +1,7 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic + +object DynamicTest { + new Foo().bazUpdate = 42 // error +} diff --git a/tests/neg/dynamicUpdateDynamicTest2.scala b/tests/neg/dynamicUpdateDynamicTest2.scala new file mode 100644 index 000000000..8bb8a9537 --- /dev/null +++ b/tests/neg/dynamicUpdateDynamicTest2.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def updateDynamic(name: String)(value: String): Unit = ??? +} + +object DynamicTest { + new Foo().bazUpdate = 42 // error +} diff --git a/tests/neg/dynamicUpdateDynamicTest3.scala b/tests/neg/dynamicUpdateDynamicTest3.scala new file mode 100644 index 000000000..22008dda4 --- /dev/null +++ b/tests/neg/dynamicUpdateDynamicTest3.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def updateDynamic(name: String)(value: Int): Unit = ??? +} + +object DynamicTest { + def test: Int = new Foo().bazUpdate = 42 // error +} diff --git a/tests/neg/dynamicUpdateDynamicTest4.scala b/tests/neg/dynamicUpdateDynamicTest4.scala new file mode 100644 index 000000000..3cdd32b3c --- /dev/null +++ b/tests/neg/dynamicUpdateDynamicTest4.scala @@ -0,0 +1,9 @@ +import scala.language.dynamics + +class Foo extends scala.Dynamic { + def updateDynamic(name: Int)(value: Int): Unit = ??? +} + +object DynamicTest { + new Foo().bazUpdate = 42 // error +} |