aboutsummaryrefslogtreecommitdiff
path: root/tests/disabled/macro/run/macro-basic-ma-mdmi
diff options
context:
space:
mode:
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.scala32
-rw-r--r--tests/disabled/macro/run/macro-basic-ma-mdmi/Test_2.scala4
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