summaryrefslogtreecommitdiff
path: root/test/files/neg/macro-without-xmacros-a
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-04-12 15:23:51 +0100
committerPaul Phillips <paulp@improving.org>2012-04-12 15:23:51 +0100
commite4976678fa7479c2a44f19b00cb691dc5b881609 (patch)
tree5b6749880f8662548979f5e57509258971854500 /test/files/neg/macro-without-xmacros-a
parentf9e8a8c13ff6f75f330766ae6e0febe431fc4b12 (diff)
parent46d0d73f66111d5d31b9fd593972970d7e9056bb (diff)
downloadscala-e4976678fa7479c2a44f19b00cb691dc5b881609.tar.gz
scala-e4976678fa7479c2a44f19b00cb691dc5b881609.tar.bz2
scala-e4976678fa7479c2a44f19b00cb691dc5b881609.zip
Merge commit 'refs/pull/375/head' into develop
Diffstat (limited to 'test/files/neg/macro-without-xmacros-a')
-rw-r--r--test/files/neg/macro-without-xmacros-a/Impls_1.scala18
-rw-r--r--test/files/neg/macro-without-xmacros-a/Macros_2.scala12
-rw-r--r--test/files/neg/macro-without-xmacros-a/Test_3.scala4
3 files changed, 34 insertions, 0 deletions
diff --git a/test/files/neg/macro-without-xmacros-a/Impls_1.scala b/test/files/neg/macro-without-xmacros-a/Impls_1.scala
new file mode 100644
index 0000000000..2493c81c95
--- /dev/null
+++ b/test/files/neg/macro-without-xmacros-a/Impls_1.scala
@@ -0,0 +1,18 @@
+import scala.reflect.makro.{Context => Ctx}
+
+object Impls {
+ def foo_impl(c: Ctx)(x: c.Expr[Int]): c.mirror.Tree = {
+ import c.mirror._
+ Apply(Select(x.tree, newTermName("$plus")), List(Literal(Constant(1))))
+ }
+
+ def bar_impl(c: Ctx)(x: c.Expr[Int]): c.mirror.Tree = {
+ import c.mirror._
+ Apply(Select(x.tree, newTermName("$plus")), List(Literal(Constant(2))))
+ }
+
+ def quux_impl(c: Ctx)(x: c.Expr[Int]): c.mirror.Tree = {
+ import c.mirror._
+ Apply(Select(x.tree, newTermName("$plus")), List(Literal(Constant(3))))
+ }
+}
diff --git a/test/files/neg/macro-without-xmacros-a/Macros_2.scala b/test/files/neg/macro-without-xmacros-a/Macros_2.scala
new file mode 100644
index 0000000000..62f9dcf505
--- /dev/null
+++ b/test/files/neg/macro-without-xmacros-a/Macros_2.scala
@@ -0,0 +1,12 @@
+import Impls._
+
+object Macros {
+ object Shmacros {
+ def foo(x: Int): Int = macro foo_impl
+ }
+ def bar(x: Int): Int = macro bar_impl
+}
+
+class Macros {
+ def quux(x: Int): Int = macro quux_impl
+} \ No newline at end of file
diff --git a/test/files/neg/macro-without-xmacros-a/Test_3.scala b/test/files/neg/macro-without-xmacros-a/Test_3.scala
new file mode 100644
index 0000000000..e9a10e20c9
--- /dev/null
+++ b/test/files/neg/macro-without-xmacros-a/Test_3.scala
@@ -0,0 +1,4 @@
+object Test extends App {
+ import Macros.Shmacros._
+ println(foo(2) + Macros.bar(2) * new Macros().quux(4))
+} \ No newline at end of file