summaryrefslogtreecommitdiff
path: root/test/files/run/repl-classbased.scala
diff options
context:
space:
mode:
authorSom Snytt <som.snytt@gmail.com>2016-04-07 12:32:40 -0700
committerSom Snytt <som.snytt@gmail.com>2016-05-02 10:36:43 -0700
commit86ae2f95ce33ef22f9c9ad40d6a966fbef7d352f (patch)
tree848f206dcd7b7f6461cec183aef136e8ead30b57 /test/files/run/repl-classbased.scala
parentcf3850626a62ce7aefad129b3af5c8184c7226a6 (diff)
downloadscala-86ae2f95ce33ef22f9c9ad40d6a966fbef7d352f.tar.gz
scala-86ae2f95ce33ef22f9c9ad40d6a966fbef7d352f.tar.bz2
scala-86ae2f95ce33ef22f9c9ad40d6a966fbef7d352f.zip
SI-9740 Repl import fix -Yrepl-class-based
Under `-Yrepl-class-based`, templating must follow the same scoping as under traditional object-based. The new test shows a typical case where two values of the same simple name must be imported in different scopes.
Diffstat (limited to 'test/files/run/repl-classbased.scala')
-rw-r--r--test/files/run/repl-classbased.scala22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/files/run/repl-classbased.scala b/test/files/run/repl-classbased.scala
new file mode 100644
index 0000000000..595e123159
--- /dev/null
+++ b/test/files/run/repl-classbased.scala
@@ -0,0 +1,22 @@
+
+import scala.tools.partest.ReplTest
+import scala.tools.nsc.Settings
+
+//SI-9740
+object Test extends ReplTest {
+ override def transformSettings(s: Settings): Settings = {
+ s.Yreplclassbased.value = true
+ s
+ }
+
+ def code =
+ """
+case class K(s: String)
+class C { implicit val k: K = K("OK?"); override def toString = s"C($k)" }
+val c = new C
+import c.k
+implicitly[K]
+val k = 42
+k // was K(OK?)
+ """
+}