aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/printing
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2016-06-29 19:09:43 +0200
committerMartin Odersky <odersky@gmail.com>2016-07-11 13:34:59 +0200
commit4bf43f82c88dbeb0578e289b37ce1a7580aa22f2 (patch)
tree41c4483ffcf4e93e8d19f4ec89206a848738eb08 /src/dotty/tools/dotc/printing
parent178e90e441481364f19163a9dad624a4d859fb1b (diff)
downloaddotty-4bf43f82c88dbeb0578e289b37ce1a7580aa22f2.tar.gz
dotty-4bf43f82c88dbeb0578e289b37ce1a7580aa22f2.tar.bz2
dotty-4bf43f82c88dbeb0578e289b37ce1a7580aa22f2.zip
Turn on new hk scheme
For the moment under newHK flag. - avoid crasher in derivedTypeParams (NamedTypes don't always have symbols) - Revise logic in type comparer for new HK scheme
Diffstat (limited to 'src/dotty/tools/dotc/printing')
-rw-r--r--src/dotty/tools/dotc/printing/PlainPrinter.scala2
-rw-r--r--src/dotty/tools/dotc/printing/RefinedPrinter.scala3
2 files changed, 3 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/printing/PlainPrinter.scala b/src/dotty/tools/dotc/printing/PlainPrinter.scala
index 59f1608db..20bf8b407 100644
--- a/src/dotty/tools/dotc/printing/PlainPrinter.scala
+++ b/src/dotty/tools/dotc/printing/PlainPrinter.scala
@@ -50,7 +50,7 @@ class PlainPrinter(_ctx: Context) extends Printer {
homogenize(tp1) & homogenize(tp2)
case OrType(tp1, tp2) =>
homogenize(tp1) | homogenize(tp2)
- case tp @ TypeRef(_, tpnme.hkApply) =>
+ case tp @ TypeRef(_, tpnme.hkApplyOBS) =>
val tp1 = tp.reduceProjection
if (tp1 eq tp) tp else homogenize(tp1)
case tp: LazyRef =>
diff --git a/src/dotty/tools/dotc/printing/RefinedPrinter.scala b/src/dotty/tools/dotc/printing/RefinedPrinter.scala
index 1020468a9..b5bc17c0c 100644
--- a/src/dotty/tools/dotc/printing/RefinedPrinter.scala
+++ b/src/dotty/tools/dotc/printing/RefinedPrinter.scala
@@ -116,7 +116,8 @@ class RefinedPrinter(_ctx: Context) extends PlainPrinter(_ctx) {
if (defn.isFunctionClass(cls)) return toTextFunction(args)
if (defn.isTupleClass(cls)) return toTextTuple(args)
return (toTextLocal(tycon) ~ "[" ~ Text(args map argText, ", ") ~ "]").close
- case tp @ TypeLambda(variances, argBoundss, body) =>
+ case tp @ TypeLambda(argBoundss, body) =>
+ val variances = tp.classSymbol.typeParams.map(_.variance)
val prefix = ((('X' - 'A') + lambdaNestingLevel) % 26 + 'A').toChar
val paramNames = variances.indices.toList.map(prefix.toString + _)
val instantiate = new TypeMap {