summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2012-02-05 16:56:48 +0100
committerEugene Burmako <xeno.by@gmail.com>2012-02-05 17:02:11 +0100
commit75696bc3d310a53594d97853f38bb0dbfef42390 (patch)
treecabebd3ab2cfbdf7a3d4f1969ead4b2c4055c6f8 /test
parentffc2389840852a120fecd772206d55db9a79f30e (diff)
downloadscala-75696bc3d310a53594d97853f38bb0dbfef42390.tar.gz
scala-75696bc3d310a53594d97853f38bb0dbfef42390.tar.bz2
scala-75696bc3d310a53594d97853f38bb0dbfef42390.zip
Fixes https://issues.scala-lang.org/browse/SI-5334
New version of reification isn't susceptible to this bug. The problem was with Code.lift generating not only a tree, but also a manifest with the type of that tree. That led to an issue in the case of the type of the manifest depending on a class declared inside the quasiquote. Now manifests in reification are gone, so is the problem.
Diffstat (limited to 'test')
-rw-r--r--test/files/run/t5334_1.check2
-rw-r--r--test/files/run/t5334_1.scala (renamed from test/pending/run/t5334_1.scala)5
-rw-r--r--test/files/run/t5334_2.check2
-rw-r--r--test/files/run/t5334_2.scala (renamed from test/pending/run/t5334_2.scala)5
4 files changed, 10 insertions, 4 deletions
diff --git a/test/files/run/t5334_1.check b/test/files/run/t5334_1.check
new file mode 100644
index 0000000000..e09aedaede
--- /dev/null
+++ b/test/files/run/t5334_1.check
@@ -0,0 +1,2 @@
+C
+C \ No newline at end of file
diff --git a/test/pending/run/t5334_1.scala b/test/files/run/t5334_1.scala
index c1eba89c2b..7acf282bb8 100644
--- a/test/pending/run/t5334_1.scala
+++ b/test/files/run/t5334_1.scala
@@ -4,12 +4,13 @@ import reflect.runtime.Mirror.ToolBox
object Test extends App {
val code = scala.reflect.Code.lift{
- class C
+ class C { override def toString = "C" }
new C
};
val reporter = new ConsoleReporter(new Settings)
val toolbox = new ToolBox(reporter)
val ttree = toolbox.typeCheck(code.tree)
- toolbox.runExpr(ttree)
+ println(ttree.tpe)
+ println(toolbox.runExpr(ttree))
}
diff --git a/test/files/run/t5334_2.check b/test/files/run/t5334_2.check
new file mode 100644
index 0000000000..2ae76754c0
--- /dev/null
+++ b/test/files/run/t5334_2.check
@@ -0,0 +1,2 @@
+List[(C, C)]
+List((C,C)) \ No newline at end of file
diff --git a/test/pending/run/t5334_2.scala b/test/files/run/t5334_2.scala
index 361b8c85f2..26f0778400 100644
--- a/test/pending/run/t5334_2.scala
+++ b/test/files/run/t5334_2.scala
@@ -4,12 +4,13 @@ import reflect.runtime.Mirror.ToolBox
object Test extends App {
val code = scala.reflect.Code.lift{
- class C
+ class C { override def toString() = "C" }
List((new C, new C))
};
val reporter = new ConsoleReporter(new Settings)
val toolbox = new ToolBox(reporter)
val ttree = toolbox.typeCheck(code.tree)
- toolbox.runExpr(ttree)
+ println(ttree.tpe)
+ println(toolbox.runExpr(ttree))
}