aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/printing/RefinedPrinter.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2014-06-13 09:36:47 +0200
committerMartin Odersky <odersky@gmail.com>2014-06-13 09:36:47 +0200
commitcfd13f731c6757005379c5ad5ad51abfe3282215 (patch)
treefe760e4b53fd1e2a11b239ec1fe2435d0da5822a /src/dotty/tools/dotc/printing/RefinedPrinter.scala
parent9a6a4e8ca400835643e839cd98bb5581cbf97ab9 (diff)
downloaddotty-cfd13f731c6757005379c5ad5ad51abfe3282215.tar.gz
dotty-cfd13f731c6757005379c5ad5ad51abfe3282215.tar.bz2
dotty-cfd13f731c6757005379c5ad5ad51abfe3282215.zip
Fix to printing type parameters.
Printing a type parameter reference `A#T` now only reduces to `T` if `A` is some `B.this.type`.
Diffstat (limited to 'src/dotty/tools/dotc/printing/RefinedPrinter.scala')
-rw-r--r--src/dotty/tools/dotc/printing/RefinedPrinter.scala6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/printing/RefinedPrinter.scala b/src/dotty/tools/dotc/printing/RefinedPrinter.scala
index eb6b151b4..1fc6fbee0 100644
--- a/src/dotty/tools/dotc/printing/RefinedPrinter.scala
+++ b/src/dotty/tools/dotc/printing/RefinedPrinter.scala
@@ -110,9 +110,9 @@ class RefinedPrinter(_ctx: Context) extends PlainPrinter(_ctx) {
}
case tp: TypeRef =>
if ((tp.symbol is TypeParam | TypeArgument) && !ctx.phase.erasedTypes) {
- return tp.info match {
- case TypeAlias(hi) => toText(hi)
- case _ => nameString(tp.symbol)
+ tp.info match {
+ case TypeAlias(hi) => return toText(hi)
+ case _ => if (tp.prefix.isInstanceOf[ThisType]) return nameString(tp.symbol)
}
}
else if (tp.symbol.isAnonymousClass)