diff options
Diffstat (limited to 'tests/disabled/macro/run/macro-basic-ma-mdmi')
-rw-r--r-- | tests/disabled/macro/run/macro-basic-ma-mdmi/Impls_Macros_1.scala | 32 | ||||
-rw-r--r-- | tests/disabled/macro/run/macro-basic-ma-mdmi/Test_2.scala | 4 |
2 files changed, 36 insertions, 0 deletions
diff --git a/tests/disabled/macro/run/macro-basic-ma-mdmi/Impls_Macros_1.scala b/tests/disabled/macro/run/macro-basic-ma-mdmi/Impls_Macros_1.scala new file mode 100644 index 000000000..73a5a971a --- /dev/null +++ b/tests/disabled/macro/run/macro-basic-ma-mdmi/Impls_Macros_1.scala @@ -0,0 +1,32 @@ +import scala.reflect.macros.blackbox.Context + +object Impls { + def foo(c: Context)(x: c.Expr[Int]): c.Expr[Int] = { + import c.universe._ + val body = Apply(Select(x.tree, TermName("$plus")), List(Literal(Constant(1)))) + c.Expr[Int](body) + } + + def bar(c: Context)(x: c.Expr[Int]): c.Expr[Int] = { + import c.universe._ + val body = Apply(Select(x.tree, TermName("$plus")), List(Literal(Constant(2)))) + c.Expr[Int](body) + } + + def quux(c: Context)(x: c.Expr[Int]): c.Expr[Int] = { + import c.universe._ + val body = Apply(Select(x.tree, TermName("$plus")), List(Literal(Constant(3)))) + c.Expr[Int](body) + } +} + +object Macros { + object Shmacros { + def foo(x: Int): Int = macro Impls.foo + } + def bar(x: Int): Int = macro Impls.bar +} + +class Macros { + def quux(x: Int): Int = macro Impls.quux +}
\ No newline at end of file diff --git a/tests/disabled/macro/run/macro-basic-ma-mdmi/Test_2.scala b/tests/disabled/macro/run/macro-basic-ma-mdmi/Test_2.scala new file mode 100644 index 000000000..9c45f59d7 --- /dev/null +++ b/tests/disabled/macro/run/macro-basic-ma-mdmi/Test_2.scala @@ -0,0 +1,4 @@ +object Test extends dotty.runtime.LegacyApp { + import Macros.Shmacros._ + println(foo(2) + Macros.bar(2) * new Macros().quux(4)) +}
\ No newline at end of file |