aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/unpickleScala2
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2015-12-04 17:55:21 +0100
committerMartin Odersky <odersky@gmail.com>2015-12-06 16:17:43 +0100
commitf8d82c2634dcf9d94037b107d49d088e89f7070f (patch)
treed32f3c0e241b8cb4bcf75ce3ff233271925e31b4 /src/dotty/tools/dotc/core/unpickleScala2
parentdec21f5ea39a2c2c059c829ac16edd68f71793ee (diff)
downloaddotty-f8d82c2634dcf9d94037b107d49d088e89f7070f.tar.gz
dotty-f8d82c2634dcf9d94037b107d49d088e89f7070f.tar.bz2
dotty-f8d82c2634dcf9d94037b107d49d088e89f7070f.zip
Switch to new hk scheme.
Diffstat (limited to 'src/dotty/tools/dotc/core/unpickleScala2')
-rw-r--r--src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala b/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala
index 747d73ea9..b0e31202f 100644
--- a/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala
+++ b/src/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.scala
@@ -53,7 +53,7 @@ object Scala2Unpickler {
case TempPolyType(tparams, restpe) =>
if (denot.isType) {
assert(!denot.isClass)
- restpe.LambdaAbstract(tparams, cycleParanoid = true)
+ restpe.LambdaAbstract(tparams)
}
else
PolyType.fromSymbols(tparams, restpe)
@@ -715,8 +715,9 @@ class Scala2Unpickler(bytes: Array[Byte], classRoot: ClassDenotation, moduleClas
else TypeRef(pre, sym.name.asTypeName)
val args = until(end, readTypeRef)
if (sym == defn.ByNameParamClass2x) ExprType(args.head)
- else if (args.isEmpty && sym.typeParams.nonEmpty) tycon.EtaExpand(sym.typeParams)
- else tycon.appliedTo(adaptArgs(sym.typeParams, args))
+ else if (args.nonEmpty) tycon.safeAppliedTo(adaptArgs(sym.typeParams, args))
+ else if (sym.typeParams.nonEmpty) tycon.EtaExpand(sym.typeParams)
+ else tycon
case TYPEBOUNDStpe =>
TypeBounds(readTypeRef(), readTypeRef())
case REFINEDtpe =>