aboutsummaryrefslogtreecommitdiff
path: root/tests/neg
diff options
context:
space:
mode:
authorodersky <odersky@gmail.com>2017-02-22 14:47:07 +0100
committerGitHub <noreply@github.com>2017-02-22 14:47:07 +0100
commit8a826ee3d7a7a7230dea8cc1fa4f87b70e8efe81 (patch)
treeb201e8017cd3bec32071d7ebe3fec338d7105f76 /tests/neg
parent5c7ef22a5464456a3e95869c0f6154a2ae8a5f84 (diff)
parent5e53ff36f1d9ac2bd433fa01e28a194810c1be74 (diff)
downloaddotty-8a826ee3d7a7a7230dea8cc1fa4f87b70e8efe81.tar.gz
dotty-8a826ee3d7a7a7230dea8cc1fa4f87b70e8efe81.tar.bz2
dotty-8a826ee3d7a7a7230dea8cc1fa4f87b70e8efe81.zip
Merge pull request #2014 from dotty-staging/fix-#2002
Fix #2000: Make implicit and non-implicit functions incomparable
Diffstat (limited to 'tests/neg')
-rw-r--r--tests/neg/customArgs/i2002.scala4
-rw-r--r--tests/neg/i2000.scala23
2 files changed, 27 insertions, 0 deletions
diff --git a/tests/neg/customArgs/i2002.scala b/tests/neg/customArgs/i2002.scala
new file mode 100644
index 000000000..5561b77b8
--- /dev/null
+++ b/tests/neg/customArgs/i2002.scala
@@ -0,0 +1,4 @@
+class Test {
+ def foo(i: Int): Int = i
+ def foo(implicit i: Int): Int = i // error
+}
diff --git a/tests/neg/i2000.scala b/tests/neg/i2000.scala
new file mode 100644
index 000000000..aa1250f08
--- /dev/null
+++ b/tests/neg/i2000.scala
@@ -0,0 +1,23 @@
+object test1 {
+ class C[A] { def foo(a: A) = "c" }
+ class D extends C[String] { override def foo(implicit s: String) = "d" } // error
+}
+
+object test2 {
+ class C[A] { final def foo(a: A) = "c" }
+ class D extends C[String] { def foo(implicit s: String) = "d" } // error
+ object Test {
+ def main(args: Array[String]) =
+ new D
+ }
+}
+
+object test3 {
+ class A {
+ def foo(implicit i: Int): Int = i + i
+ }
+
+ class B extends A {
+ override def foo(i: Int): Int = i // error
+ }
+}