aboutsummaryrefslogtreecommitdiff
path: root/compiler/src/dotty/tools/dotc/core
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2017-03-30 14:06:43 +0200
committerMartin Odersky <odersky@gmail.com>2017-04-11 09:33:11 +0200
commitab2d095943dc63414da8352ebf1e82bdb642450d (patch)
tree972ef8f09fac18b8ae20f0d5bd03e6edddb639da /compiler/src/dotty/tools/dotc/core
parent21ded6ee9f727bd5a1c3975809c06868fe1b5536 (diff)
downloaddotty-ab2d095943dc63414da8352ebf1e82bdb642450d.tar.gz
dotty-ab2d095943dc63414da8352ebf1e82bdb642450d.tar.bz2
dotty-ab2d095943dc63414da8352ebf1e82bdb642450d.zip
Make "direct names" semantic
Diffstat (limited to 'compiler/src/dotty/tools/dotc/core')
-rw-r--r--compiler/src/dotty/tools/dotc/core/NameKinds.scala1
-rw-r--r--compiler/src/dotty/tools/dotc/core/StdNames.scala2
-rw-r--r--compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala2
3 files changed, 3 insertions, 2 deletions
diff --git a/compiler/src/dotty/tools/dotc/core/NameKinds.scala b/compiler/src/dotty/tools/dotc/core/NameKinds.scala
index 381bb3fc0..f5a758256 100644
--- a/compiler/src/dotty/tools/dotc/core/NameKinds.scala
+++ b/compiler/src/dotty/tools/dotc/core/NameKinds.scala
@@ -248,6 +248,7 @@ object NameKinds {
val ProtectedAccessorName = new PrefixNameKind(PROTECTEDACCESSOR, "protected$")
val ProtectedSetterName = new PrefixNameKind(PROTECTEDSETTER, "protected$set") // dubious encoding, kept for Scala2 compatibility
val AvoidClashName = new SuffixNameKind(AVOIDCLASH, "$_avoid_name_clash_$")
+ val DirectName = new SuffixNameKind(DIRECT, "$direct")
val ModuleClassName = new SuffixNameKind(OBJECTCLASS, "$", optInfoString = "ModuleClass")
object SignedName extends NameKind(63) {
diff --git a/compiler/src/dotty/tools/dotc/core/StdNames.scala b/compiler/src/dotty/tools/dotc/core/StdNames.scala
index 51821c51b..ece3d42dd 100644
--- a/compiler/src/dotty/tools/dotc/core/StdNames.scala
+++ b/compiler/src/dotty/tools/dotc/core/StdNames.scala
@@ -132,7 +132,6 @@ object StdNames {
val COMPANION_MODULE_METHOD: N = "companion$module"
val COMPANION_CLASS_METHOD: N = "companion$class"
val TRAIT_SETTER_SEPARATOR: N = str.TRAIT_SETTER_SEPARATOR
- val DIRECT_SUFFIX: N = "$direct"
// value types (and AnyRef) are all used as terms as well
// as (at least) arguments to the @specialize annotation.
@@ -166,7 +165,6 @@ object StdNames {
// fictions we use as both types and terms
final val ERROR: N = "<error>"
- final val ERRORenc: N = encode("<error>")
final val NO_NAME: N = "<none>" // formerly NOSYMBOL
final val WILDCARD: N = "_"
diff --git a/compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala b/compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala
index ec59e711a..4acadc943 100644
--- a/compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala
+++ b/compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala
@@ -235,9 +235,11 @@ object TastyFormat {
final val INITIALIZER = 23
final val SHADOWED = 24
final val AVOIDCLASH = 27
+ final val DIRECT = 28
final val OBJECTCLASS = 29
final val SIGNED = 63
+ final val firstInternalTag = 64
// AST tags