From e3e5e79e24503a2e6be7f708d81c27068664b893 Mon Sep 17 00:00:00 2001 From: Martin Odersky Date: Fri, 31 Mar 2017 09:52:33 +0200 Subject: Avoid duplicate hashCode/equals --- compiler/src/dotty/tools/dotc/core/Names.scala | 4 +--- compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala | 2 +- compiler/src/dotty/tools/dotc/transform/TreeChecker.scala | 3 ++- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/compiler/src/dotty/tools/dotc/core/Names.scala b/compiler/src/dotty/tools/dotc/core/Names.scala index 37df9cd24..d1412c35c 100644 --- a/compiler/src/dotty/tools/dotc/core/Names.scala +++ b/compiler/src/dotty/tools/dotc/core/Names.scala @@ -105,6 +105,7 @@ object Names { def lastIndexOfSlice(str: String): Int = lastPart.toString.lastIndexOfSlice(str) def lastIndexOfSlice(name: Name): Int = lastIndexOfSlice(name.toString) + override def hashCode = System.identityHashCode(this) override def equals(that: Any) = this eq that.asInstanceOf[AnyRef] } @@ -196,9 +197,6 @@ object Names { thisKind == kind || !thisKind.definesNewName && thisKind.tag > kind.tag && underlying.is(kind) } - - override def hashCode = System.identityHashCode(this) - override def equals(other: Any) = this eq other.asInstanceOf[AnyRef] } class SimpleTermName(val start: Int, val length: Int, @sharable private[Names] var next: SimpleTermName) extends TermName { diff --git a/compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala b/compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala index 602bdeb02..d1997376d 100644 --- a/compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala +++ b/compiler/src/dotty/tools/dotc/core/tasty/TastyFormat.scala @@ -223,8 +223,8 @@ object TastyFormat { final val UTF8 = 1 final val QUALIFIED = 2 final val FLATTENED = 3 - final val EXPANDPREFIX = 5 final val EXPANDED = 4 + final val EXPANDPREFIX = 5 final val TRAITSETTER = 6 final val UNIQUE = 10 final val DEFAULTGETTER = 11 diff --git a/compiler/src/dotty/tools/dotc/transform/TreeChecker.scala b/compiler/src/dotty/tools/dotc/transform/TreeChecker.scala index 199fac82b..9bb00e683 100644 --- a/compiler/src/dotty/tools/dotc/transform/TreeChecker.scala +++ b/compiler/src/dotty/tools/dotc/transform/TreeChecker.scala @@ -403,7 +403,8 @@ class TreeChecker extends Phase with SymTransformer { override def typedDefDef(ddef: untpd.DefDef, sym: Symbol)(implicit ctx: Context) = withDefinedSyms(ddef.tparams) { withDefinedSymss(ddef.vparamss) { - if (!sym.isClassConstructor && !(sym.name eq Names.STATIC_CONSTRUCTOR)) assert(isValidJVMMethodName(sym.name), s"${sym.fullName} name is invalid on jvm") + if (!sym.isClassConstructor && !(sym.name eq Names.STATIC_CONSTRUCTOR)) + assert(isValidJVMMethodName(sym.name), s"${sym.name.debugString} name is invalid on jvm") ddef.vparamss.foreach(_.foreach { vparam => assert(vparam.symbol.is(Param), -- cgit v1.2.3