summaryrefslogtreecommitdiff
path: root/test/files
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@epfl.ch>2012-06-19 01:34:07 -0700
committerAdriaan Moors <adriaan.moors@epfl.ch>2012-06-19 01:34:07 -0700
commit736f622f770700a9c18b84e6a76e31260990496c (patch)
tree5dc1473940306278e549275ba636f8974469fdfe /test/files
parentef98fa3af90a30e745bd6a5e944b3351be46391f (diff)
parentd3393306e3899e638b1c5ebe577f3fe1b2729cbd (diff)
downloadscala-736f622f770700a9c18b84e6a76e31260990496c.tar.gz
scala-736f622f770700a9c18b84e6a76e31260990496c.tar.bz2
scala-736f622f770700a9c18b84e6a76e31260990496c.zip
Merge pull request #697 from retronym/ticket/4270-3
SI-4270 Disqualify in scope implicits that are shadowed.
Diffstat (limited to 'test/files')
-rw-r--r--test/files/neg/t4270.check4
-rw-r--r--test/files/neg/t4270.scala6
-rw-r--r--test/files/neg/t5376.check11
-rw-r--r--test/files/neg/t5376.scala24
4 files changed, 45 insertions, 0 deletions
diff --git a/test/files/neg/t4270.check b/test/files/neg/t4270.check
new file mode 100644
index 0000000000..cfe0a93e00
--- /dev/null
+++ b/test/files/neg/t4270.check
@@ -0,0 +1,4 @@
+t4270.scala:5: error: could not find implicit value for parameter e: Int
+ implicitly[Int]
+ ^
+one error found
diff --git a/test/files/neg/t4270.scala b/test/files/neg/t4270.scala
new file mode 100644
index 0000000000..2c7c71d8c2
--- /dev/null
+++ b/test/files/neg/t4270.scala
@@ -0,0 +1,6 @@
+object Test1 {
+ object A { implicit val x: Int = 1 }
+ import A.x
+ def x: Int = 0
+ implicitly[Int]
+}
diff --git a/test/files/neg/t5376.check b/test/files/neg/t5376.check
new file mode 100644
index 0000000000..0376163c35
--- /dev/null
+++ b/test/files/neg/t5376.check
@@ -0,0 +1,11 @@
+t5376.scala:12: error: type mismatch;
+ found : String("a")
+ required: Int
+ "a": Int
+ ^
+t5376.scala:22: error: type mismatch;
+ found : String("a")
+ required: Int
+ "a": Int
+ ^
+two errors found
diff --git a/test/files/neg/t5376.scala b/test/files/neg/t5376.scala
new file mode 100644
index 0000000000..8da3868566
--- /dev/null
+++ b/test/files/neg/t5376.scala
@@ -0,0 +1,24 @@
+object Test {
+ object O1 { implicit def f(s: String): Int = 1 }
+ object O2 { implicit def f(s: String): Int = 2 }
+ object O3 { def f(s: String): Int = 3 }
+
+ // Import two implicits with the same name in the same scope.
+ def m1 = {
+ import O1._
+ import O2._
+
+ // Implicit usage compiles.
+ "a": Int
+ }
+
+ // Import one implict and one non-implicit method with the
+ // same name in the same scope.
+ def m2 = {
+ import O1._
+ import O3._
+
+ // Implicit usage compiles.
+ "a": Int
+ }
+} \ No newline at end of file