diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2012-06-30 01:45:47 +0200 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2012-07-02 13:21:32 +0200 |
commit | 96dd73146f4317feeb59a242d692977f87c5211d (patch) | |
tree | b659995dc470be408db317771d147d1035826384 /test/pending | |
parent | c18414d6e1ba89882ba57266bfe96d85fb57713f (diff) | |
download | scala-96dd73146f4317feeb59a242d692977f87c5211d.tar.gz scala-96dd73146f4317feeb59a242d692977f87c5211d.tar.bz2 scala-96dd73146f4317feeb59a242d692977f87c5211d.zip |
reify no longer dealiases symbols and types
this uncovers a bug in toolboxes: https://issues.scala-lang.org/browse/SI-6007
however that bug is not critical, so it will be dealt with later
Diffstat (limited to 'test/pending')
-rw-r--r-- | test/pending/run/reify_newimpl_09.scala | 13 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_09a.scala | 13 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_09b.scala | 14 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_09c.scala | 20 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_10.scala | 14 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_16.scala | 17 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_17.scala | 20 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_28.scala | 17 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_32.scala | 17 | ||||
-rw-r--r-- | test/pending/run/reify_newimpl_34.scala | 18 |
10 files changed, 163 insertions, 0 deletions
diff --git a/test/pending/run/reify_newimpl_09.scala b/test/pending/run/reify_newimpl_09.scala new file mode 100644 index 0000000000..27fbd37b71 --- /dev/null +++ b/test/pending/run/reify_newimpl_09.scala @@ -0,0 +1,13 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + type T = Int + val code = reify { + List[T](2) + } + println(code.eval) + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_09a.scala b/test/pending/run/reify_newimpl_09a.scala new file mode 100644 index 0000000000..27fbd37b71 --- /dev/null +++ b/test/pending/run/reify_newimpl_09a.scala @@ -0,0 +1,13 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + type T = Int + val code = reify { + List[T](2) + } + println(code.eval) + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_09b.scala b/test/pending/run/reify_newimpl_09b.scala new file mode 100644 index 0000000000..9e86dd5d8d --- /dev/null +++ b/test/pending/run/reify_newimpl_09b.scala @@ -0,0 +1,14 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + type U = Int + type T = U + val code = reify { + List[T](2) + } + println(code.eval) + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_09c.scala b/test/pending/run/reify_newimpl_09c.scala new file mode 100644 index 0000000000..e2f4a4923a --- /dev/null +++ b/test/pending/run/reify_newimpl_09c.scala @@ -0,0 +1,20 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + def foo[W] = { + type U = W + type T = U + reify { + List[T](2) + } + } + val code = foo[Int] + println(code.tree.freeTypes) + val W = code.tree.freeTypes(2) + cm.mkToolBox().runExpr(code.tree, Map(W -> definitions.IntTpe)) + println(code.eval) + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_10.scala b/test/pending/run/reify_newimpl_10.scala new file mode 100644 index 0000000000..791e52943a --- /dev/null +++ b/test/pending/run/reify_newimpl_10.scala @@ -0,0 +1,14 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + type T = Int + implicit val tt = implicitly[TypeTag[String]].asInstanceOf[TypeTag[T]] // this "mistake" is made for a reason! + val code = reify { + List[T](2) + } + println(code.eval) + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_16.scala b/test/pending/run/reify_newimpl_16.scala new file mode 100644 index 0000000000..a0cadf4d48 --- /dev/null +++ b/test/pending/run/reify_newimpl_16.scala @@ -0,0 +1,17 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + class C { + type T = Int + val code = reify { + List[T](2) + } + println(code.eval) + } + + new C + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_17.scala b/test/pending/run/reify_newimpl_17.scala new file mode 100644 index 0000000000..8fbcd52502 --- /dev/null +++ b/test/pending/run/reify_newimpl_17.scala @@ -0,0 +1,20 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + class C[U] { + type T = U + val code = reify { + List[T](2.asInstanceOf[T]) + } + println(code.eval) + } + + try { + new C[Int] + } catch { + case ex: Throwable => + println(ex) + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_28.scala b/test/pending/run/reify_newimpl_28.scala new file mode 100644 index 0000000000..524a110704 --- /dev/null +++ b/test/pending/run/reify_newimpl_28.scala @@ -0,0 +1,17 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + object C { + type T = Int + val code = reify { + List[T](2) + } + println(code.eval) + } + + C + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_32.scala b/test/pending/run/reify_newimpl_32.scala new file mode 100644 index 0000000000..095e59d919 --- /dev/null +++ b/test/pending/run/reify_newimpl_32.scala @@ -0,0 +1,17 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + object C { + type T = Int + val code = reify { + List[C.T](2) + } + println(code.eval) + } + + C + } +}
\ No newline at end of file diff --git a/test/pending/run/reify_newimpl_34.scala b/test/pending/run/reify_newimpl_34.scala new file mode 100644 index 0000000000..a0a575ed7d --- /dev/null +++ b/test/pending/run/reify_newimpl_34.scala @@ -0,0 +1,18 @@ +import scala.reflect.runtime.universe._ +import scala.tools.reflect.ToolBox +import scala.tools.reflect.Eval + +object Test extends App { + { + object C { + type T = Int + lazy val c = C + val code = reify { + List[c.T](2) + } + println(code.eval) + } + + C + } +}
\ No newline at end of file |