diff options
author | Martin Odersky <odersky@gmail.com> | 2016-06-29 19:09:43 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2016-07-11 13:34:59 +0200 |
commit | 4bf43f82c88dbeb0578e289b37ce1a7580aa22f2 (patch) | |
tree | 41c4483ffcf4e93e8d19f4ec89206a848738eb08 /src/dotty/tools/dotc/printing/RefinedPrinter.scala | |
parent | 178e90e441481364f19163a9dad624a4d859fb1b (diff) | |
download | dotty-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/RefinedPrinter.scala')
-rw-r--r-- | src/dotty/tools/dotc/printing/RefinedPrinter.scala | 3 |
1 files changed, 2 insertions, 1 deletions
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 { |