aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2016-09-05 11:51:14 +0200
committerMartin Odersky <odersky@gmail.com>2016-10-02 16:11:21 +0200
commit1d932642eaed2ec9829be951f3272d32b4393a39 (patch)
tree6e7263cc14896b604d0522f01c73644f6d54ea54 /src/dotty/tools/dotc/core
parent0bd955e7780c95d41a0b6c4b7ca221f00e3cfd92 (diff)
downloaddotty-1d932642eaed2ec9829be951f3272d32b4393a39.tar.gz
dotty-1d932642eaed2ec9829be951f3272d32b4393a39.tar.bz2
dotty-1d932642eaed2ec9829be951f3272d32b4393a39.zip
Handle outer this in Inliner
Also, do some refactorings and fix some bugs in Inliner.
Diffstat (limited to 'src/dotty/tools/dotc/core')
-rw-r--r--src/dotty/tools/dotc/core/NameOps.scala1
-rw-r--r--src/dotty/tools/dotc/core/StdNames.scala2
2 files changed, 2 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/core/NameOps.scala b/src/dotty/tools/dotc/core/NameOps.scala
index ea255e5b3..ddb0421bb 100644
--- a/src/dotty/tools/dotc/core/NameOps.scala
+++ b/src/dotty/tools/dotc/core/NameOps.scala
@@ -84,6 +84,7 @@ object NameOps {
name.stripAnonNumberSuffix endsWith MODULE_VAR_SUFFIX
def isSelectorName = name.startsWith(" ") && name.tail.forall(_.isDigit)
def isLazyLocal = name.endsWith(nme.LAZY_LOCAL)
+ def isOuterSelect = name.endsWith(nme.OUTER_SELECT)
/** Is name a variable name? */
def isVariableName: Boolean = name.length > 0 && {
diff --git a/src/dotty/tools/dotc/core/StdNames.scala b/src/dotty/tools/dotc/core/StdNames.scala
index f47ab1744..fc26e0536 100644
--- a/src/dotty/tools/dotc/core/StdNames.scala
+++ b/src/dotty/tools/dotc/core/StdNames.scala
@@ -252,7 +252,7 @@ object StdNames {
val MODULE_INSTANCE_FIELD: N = NameTransformer.MODULE_INSTANCE_NAME // "MODULE$"
val OUTER: N = "$outer"
val OUTER_LOCAL: N = "$outer "
- val OUTER_SYNTH: N = "<outer>" // emitted by virtual pattern matcher, replaced by outer accessor in explicitouter
+ val OUTER_SELECT: N = "_<outer>" // emitted by inliner, replaced by outer path in explicitouter
val REFINE_CLASS: N = "<refinement>"
val ROOTPKG: N = "_root_"
val SELECTOR_DUMMY: N = "<unapply-selector>"