From 851e39991e7a929e1d83d5e35a024d5b9bd0b75f Mon Sep 17 00:00:00 2001 From: Jason Zaugg Date: Mon, 27 May 2013 13:36:48 +0200 Subject: SI-7516 Revert "SI-7234 Make named args play nice w. depmet types" This reverts commit 83c9c764b528a7a1c1d39c480d22c8e3a71d5a58. The tests are shunted to 'pending'. Why revert this seemingly innocous commit? 83c9c764 generates a ValDef whose tpt TypeTree has no original; this contains a reference to the symbol for `d`. resetAttrs and the retypecheck assigns a new symbol for d and leaves a the reference to the prior symbol dangling. The real bug is the resetAttrs concept. --- test/files/pos/t7516/A_1.scala | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 test/files/pos/t7516/A_1.scala (limited to 'test/files/pos/t7516/A_1.scala') diff --git a/test/files/pos/t7516/A_1.scala b/test/files/pos/t7516/A_1.scala new file mode 100644 index 0000000000..3bba19966d --- /dev/null +++ b/test/files/pos/t7516/A_1.scala @@ -0,0 +1,9 @@ +import scala.reflect._,macros._, scala.language.experimental.macros + +object A { + def impl[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.resetLocalAttrs(r.tree) ) + } + def demo[T](t: T): List[T] = macro impl[T] +} -- cgit v1.2.3