aboutsummaryrefslogtreecommitdiff
path: root/tests/disabled/macro/run/t6187.check
diff options
context:
space:
mode:
Diffstat (limited to 'tests/disabled/macro/run/t6187.check')
-rw-r--r--tests/disabled/macro/run/t6187.check32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/disabled/macro/run/t6187.check b/tests/disabled/macro/run/t6187.check
new file mode 100644
index 000000000..9a9e266ec
--- /dev/null
+++ b/tests/disabled/macro/run/t6187.check
@@ -0,0 +1,32 @@
+Type in expressions to have them evaluated.
+Type :help for more information.
+
+scala> import scala.language.experimental.macros, scala.reflect.macros.blackbox.Context
+import scala.language.experimental.macros
+import scala.reflect.macros.blackbox.Context
+
+scala> def macroImpl[T: c.WeakTypeTag](c: Context)(t: c.Expr[T]): c.Expr[List[T]] = {
+ val r = c.universe.reify { List(t.splice) }
+ c.Expr[List[T]]( c.untypecheck(r.tree) )
+}
+macroImpl: [T](c: scala.reflect.macros.blackbox.Context)(t: c.Expr[T])(implicit evidence$1: c.WeakTypeTag[T])c.Expr[List[T]]
+
+scala> def demo[T](t: T): List[T] = macro macroImpl[T]
+defined term macro demo: [T](t: T)List[T]
+
+scala> def m[T](t: T): List[List[T]] =
+ demo( List((t,true)) collect { case (x,true) => x } )
+m: [T](t: T)List[List[T]]
+
+scala> m(List(1))
+res0: List[List[List[Int]]] = List(List(List(1)))
+
+scala> // Showing we haven't added unreachable warnings
+
+scala> List(1) collect { case x => x }
+res1: List[Int] = List(1)
+
+scala> List("") collect { case x => x }
+res2: List[String] = List("")
+
+scala> :quit