summaryrefslogtreecommitdiff
path: root/src/reflect
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2013-03-13 05:13:16 -0700
committerPaul Phillips <paulp@improving.org>2013-03-13 05:13:16 -0700
commit184e0cc126c9499ea7572621663b14c37dba4734 (patch)
tree43832424e3150a4e34b0e5e37fccc4e76c80d4d9 /src/reflect
parentac51ccdea40dc39fe1ae278e9b9b45d1e7679baf (diff)
parent5f324591a4c4af53f27a64932b843ba1423c37cd (diff)
downloadscala-184e0cc126c9499ea7572621663b14c37dba4734.tar.gz
scala-184e0cc126c9499ea7572621663b14c37dba4734.tar.bz2
scala-184e0cc126c9499ea7572621663b14c37dba4734.zip
Merge pull request #2242 from adriaanm/merge-2.10.x
Merge 2.10.x into master
Diffstat (limited to 'src/reflect')
-rw-r--r--src/reflect/scala/reflect/internal/Types.scala6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/reflect/scala/reflect/internal/Types.scala b/src/reflect/scala/reflect/internal/Types.scala
index a6c5367425..e1433d1893 100644
--- a/src/reflect/scala/reflect/internal/Types.scala
+++ b/src/reflect/scala/reflect/internal/Types.scala
@@ -2958,6 +2958,12 @@ trait Types
origin: Type,
var constr: TypeConstraint
) extends Type {
+
+ // We don't want case class equality/hashing as TypeVar-s are mutable,
+ // and TypeRefs based on them get wrongly `uniqued` otherwise. See SI-7226.
+ override def hashCode(): Int = System.identityHashCode(this)
+ override def equals(other: Any): Boolean = this eq other.asInstanceOf[AnyRef]
+
def untouchable = false // by other typevars
override def params: List[Symbol] = Nil
override def typeArgs: List[Type] = Nil