aboutsummaryrefslogtreecommitdiff
path: root/tests/disabled/macro/pos/t6447.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/disabled/macro/pos/t6447.scala')
-rw-r--r--tests/disabled/macro/pos/t6447.scala18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/disabled/macro/pos/t6447.scala b/tests/disabled/macro/pos/t6447.scala
new file mode 100644
index 000000000..6ef69d485
--- /dev/null
+++ b/tests/disabled/macro/pos/t6447.scala
@@ -0,0 +1,18 @@
+import scala.language.experimental.macros
+import scala.reflect.macros.blackbox.Context
+
+class X { type T }
+
+object X {
+ // this works
+ def foo(x: X): x.T = macro fooImpl
+ def fooImpl(c: Context)(x: c.Expr[X]): c.Expr[x.value.T] = ???
+
+ // this doesn't
+ def bar(x: X, y: X): (x.T, y.T) = macro barImpl
+ def barImpl(c: Context)(x: c.Expr[X], y: c.Expr[X]): c.Expr[(x.value.T, y.value.T)] = ???
+
+ // neither does this
+ def baz(x: X)(xs: List[x.T]): Unit = macro bazImpl
+ def bazImpl(c: Context)(x: c.Expr[X])(xs: c.Expr[List[x.value.T]]): c.Expr[Unit] = ???
+}