diff options
author | Martin Odersky <odersky@gmail.com> | 2016-01-16 13:00:46 +0100 |
---|---|---|
committer | Guillaume Martres <smarter@ubuntu.com> | 2016-01-16 21:26:52 +0100 |
commit | a4f35e2cf41dd38a35688f351510603165c6f89f (patch) | |
tree | c5e9bfabc0627214c0ffb2dfa264222e43888425 /src | |
parent | a2c8000dcd5c50d088cbd7127449b08dd7cd34a2 (diff) | |
download | dotty-a4f35e2cf41dd38a35688f351510603165c6f89f.tar.gz dotty-a4f35e2cf41dd38a35688f351510603165c6f89f.tar.bz2 dotty-a4f35e2cf41dd38a35688f351510603165c6f89f.zip |
Make skolems uncached
There was no reason in the first case to cache them, as their
equality is reference identity. Maybe this fixes the OOM errors
we encounter.
Diffstat (limited to 'src')
-rw-r--r-- | src/dotty/tools/dotc/core/Types.scala | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/core/Types.scala b/src/dotty/tools/dotc/core/Types.scala index 45897dd64..84602ccf7 100644 --- a/src/dotty/tools/dotc/core/Types.scala +++ b/src/dotty/tools/dotc/core/Types.scala @@ -2506,11 +2506,11 @@ object Types { // ----- Skolem types ----------------------------------------------- /** A skolem type reference with underlying type `binder`. */ - abstract case class SkolemType(info: Type) extends CachedProxyType with ValueType with SingletonType { + abstract case class SkolemType(info: Type) extends UncachedProxyType with ValueType with SingletonType { override def underlying(implicit ctx: Context) = info def derivedSkolemType(info: Type)(implicit ctx: Context) = if (info eq this.info) this else SkolemType(info) - override def computeHash: Int = identityHash + override def hashCode: Int = identityHash override def equals(that: Any) = this eq that.asInstanceOf[AnyRef] override def toString = s"Skolem($info)" } |