diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2013-05-31 23:03:25 +0200 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2013-05-31 23:03:25 +0200 |
commit | 4dc3a3319705ba9cdf63978bbed9a2fc8051b34f (patch) | |
tree | c7b36ccf679cc8496a1af9ac1c8a7a35458b5f17 /test/files/run/t7375b/Macros_1.scala | |
parent | 9b310bc906257724fb0772cee116e4a7ebdb0acb (diff) | |
download | scala-4dc3a3319705ba9cdf63978bbed9a2fc8051b34f.tar.gz scala-4dc3a3319705ba9cdf63978bbed9a2fc8051b34f.tar.bz2 scala-4dc3a3319705ba9cdf63978bbed9a2fc8051b34f.zip |
SI-7375 ClassTag for value class aliases
reifyRuntimeClass now always dealiases its argument prior to processing.
Diffstat (limited to 'test/files/run/t7375b/Macros_1.scala')
-rw-r--r-- | test/files/run/t7375b/Macros_1.scala | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/test/files/run/t7375b/Macros_1.scala b/test/files/run/t7375b/Macros_1.scala new file mode 100644 index 0000000000..70e79cc2b4 --- /dev/null +++ b/test/files/run/t7375b/Macros_1.scala @@ -0,0 +1,18 @@ +import language.experimental.macros +import scala.reflect.macros.Context + +class C1(val n: Int) extends AnyVal +class C2(val n: Int) extends AnyRef + +object Macros { + type F1 = C1 + type F2 = C2 + + def foo = macro impl + def impl(c: Context) = { + import c.universe._ + def test[T: c.TypeTag] = reify(println(c.literal(c.reifyRuntimeClass(c.typeOf[T]).toString).splice)).tree + def tests = Block(List(test[C1], test[C2], test[F1], test[F2]), Literal(Constant(()))) + c.Expr[Unit](tests) + } +}
\ No newline at end of file |