summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Burmako <xeno.by@gmail.com>2012-07-17 20:35:53 +0200
committerEugene Burmako <xeno.by@gmail.com>2012-07-18 10:23:30 +0200
commit38aaa3a24ae8081c7552eede4f805e8ff063b49d (patch)
treeeb0b323942be31d79c81148576f7604a09cca7b5
parent0cfd858a38ddf0ac83d9bbefe85110f88dc707c0 (diff)
downloadscala-38aaa3a24ae8081c7552eede4f805e8ff063b49d.tar.gz
scala-38aaa3a24ae8081c7552eede4f805e8ff063b49d.tar.bz2
scala-38aaa3a24ae8081c7552eede4f805e8ff063b49d.zip
SI-5695 removes Context.enclosingApplication
Apparently it's impossible to find out the enclosing Apply node if you're an argument being typechecked (because the arguments are typechecked separately from the enclosing Apply). This functionality is by far not a core feature of macros, so I'm removing it.
-rw-r--r--src/compiler/scala/reflect/makro/runtime/Enclosures.scala1
-rw-r--r--src/reflect/scala/reflect/makro/Enclosures.scala4
-rw-r--r--test/pending/run/t5695.check2
-rw-r--r--test/pending/run/t5695/part_1.scala12
-rw-r--r--test/pending/run/t5695/part_2.scala8
5 files changed, 0 insertions, 27 deletions
diff --git a/src/compiler/scala/reflect/makro/runtime/Enclosures.scala b/src/compiler/scala/reflect/makro/runtime/Enclosures.scala
index 80c35d22ff..360a4b8e8a 100644
--- a/src/compiler/scala/reflect/makro/runtime/Enclosures.scala
+++ b/src/compiler/scala/reflect/makro/runtime/Enclosures.scala
@@ -14,7 +14,6 @@ trait Enclosures {
// vals are eager to simplify debugging
// after all we wouldn't save that much time by making them lazy
val macroApplication: Tree = expandee
- val enclosingApplication: Tree = enclTrees collectFirst { case t: Apply => t } getOrElse EmptyTree
val enclosingClass: Tree = site.enclClass.tree
val enclosingImplicits: List[(Type, Tree)] = site.openImplicits
val enclosingMacros: List[Context] = this :: universe.analyzer.openMacros // include self
diff --git a/src/reflect/scala/reflect/makro/Enclosures.scala b/src/reflect/scala/reflect/makro/Enclosures.scala
index 69bd8d09c7..ff5c13a785 100644
--- a/src/reflect/scala/reflect/makro/Enclosures.scala
+++ b/src/reflect/scala/reflect/makro/Enclosures.scala
@@ -36,10 +36,6 @@ trait Enclosures {
*/
val enclosingPosition: Position
- /** Tree that corresponds to the enclosing application, or EmptyTree if not applicable.
- */
- val enclosingApplication: Tree
-
/** Tree that corresponds to the enclosing method, or EmptyTree if not applicable.
*/
val enclosingMethod: Tree
diff --git a/test/pending/run/t5695.check b/test/pending/run/t5695.check
deleted file mode 100644
index d50069ab4f..0000000000
--- a/test/pending/run/t5695.check
+++ /dev/null
@@ -1,2 +0,0 @@
-..
-..
diff --git a/test/pending/run/t5695/part_1.scala b/test/pending/run/t5695/part_1.scala
deleted file mode 100644
index b8e8f8e52f..0000000000
--- a/test/pending/run/t5695/part_1.scala
+++ /dev/null
@@ -1,12 +0,0 @@
-import language.experimental.macros
-import scala.reflect.makro.Context
-
-object Defs {
-
- def mkInt = macro mkIntImpl
- def mkIntImpl(c: Context): c.Expr[Any] = {
- println(c.enclosingApplication)
- c.reify{ 23 }
- }
-
-}
diff --git a/test/pending/run/t5695/part_2.scala b/test/pending/run/t5695/part_2.scala
deleted file mode 100644
index d34219437d..0000000000
--- a/test/pending/run/t5695/part_2.scala
+++ /dev/null
@@ -1,8 +0,0 @@
-import Defs._
-
-object Test extends App {
-
- val i1 = mkInt
- val i2 = identity(mkInt)
-
-}