Permalink
Browse files

Revert "Fix for ## inconsistency."

This reverts commit 58bb2d1.

I guess this must be what's failing the nightly.
  • Loading branch information...
paulp committed May 10, 2012
1 parent b0dd045 commit b0e85333a286075882352f66e59e5aa3f287e62e
Showing with 4 additions and 12 deletions.
  1. +4 −7 src/library/scala/runtime/ScalaRunTime.scala
  2. +0 −5 test/files/run/hashhash.scala
@@ -234,13 +234,10 @@ object ScalaRunTime {
// Note that these are the implementations called by ##, so they
// must not call ## themselves.
- @inline def hash(x: Any): Int = x match {
- case null => 0
- case x: Double => hash(x)
- case x: Float => hash(x)
- case x: java.lang.Number => hash(x)
- case _ => x.hashCode
- }
+ @inline def hash(x: Any): Int =
+ if (x == null) 0
+ else if (x.isInstanceOf[java.lang.Number]) BoxesRunTime.hashFromNumber(x.asInstanceOf[java.lang.Number])
+ else x.hashCode
@inline def hash(dv: Double): Int = {
val iv = dv.toInt
@@ -6,10 +6,5 @@ object Test {
/** Just a little sanity check, not to be confused with a unit test. */
List(5, 5.5f, "abc", new AnyRef, ()) foreach confirmSame
List(5.0f, 1.0d, -(5.0f), (-1.0d)) foreach confirmDifferent
-
- val x = (BigInt(1) << 64).toDouble
- val y: Any = x
-
- assert(x.## == y.##, ((x, y)))
}
}

0 comments on commit b0e8533

Please sign in to comment.