summaryrefslogtreecommitdiff
path: root/src/reflect
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@typesafe.com>2013-03-12 16:47:58 -0700
committerAdriaan Moors <adriaan.moors@typesafe.com>2013-03-12 17:18:19 -0700
commit5f324591a4c4af53f27a64932b843ba1423c37cd (patch)
tree235c718063583c8d4001e1216eccd533da20bda9 /src/reflect
parent86b0231d7c4970cfff775ef6511a822d149e755c (diff)
parent52adf130409df57fd612a119e352345cf1c93979 (diff)
downloadscala-5f324591a4c4af53f27a64932b843ba1423c37cd.tar.gz
scala-5f324591a4c4af53f27a64932b843ba1423c37cd.tar.bz2
scala-5f324591a4c4af53f27a64932b843ba1423c37cd.zip
Merge 2.10.x into master
Conflicts: src/compiler/scala/reflect/reify/Errors.scala src/compiler/scala/tools/nsc/typechecker/NamesDefaults.scala
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