aboutsummaryrefslogtreecommitdiff
path: root/compiler/src/dotty/tools/dotc/core/TypeErasure.scala
diff options
context:
space:
mode:
authorFelix Mulder <felix.mulder@gmail.com>2017-04-18 17:28:40 +0200
committerGitHub <noreply@github.com>2017-04-18 17:28:40 +0200
commit6a0c581d24581cee19dd5448b1d6821f0538f0ca (patch)
treee476fc785d0df6d138e44a3e6c7dea411f649cd3 /compiler/src/dotty/tools/dotc/core/TypeErasure.scala
parentab124cb8cda3ab65b0195f1a7f74006c24ebe7ab (diff)
parent37120df19265da923703de00911e33937e5a66de (diff)
downloaddotty-6a0c581d24581cee19dd5448b1d6821f0538f0ca.tar.gz
dotty-6a0c581d24581cee19dd5448b1d6821f0538f0ca.tar.bz2
dotty-6a0c581d24581cee19dd5448b1d6821f0538f0ca.zip
Merge pull request #2236 from dotty-staging/fix-#2234
Fix #2234: Dealias before type erasing
Diffstat (limited to 'compiler/src/dotty/tools/dotc/core/TypeErasure.scala')
-rw-r--r--compiler/src/dotty/tools/dotc/core/TypeErasure.scala4
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/src/dotty/tools/dotc/core/TypeErasure.scala b/compiler/src/dotty/tools/dotc/core/TypeErasure.scala
index f35752644..1eb90b8eb 100644
--- a/compiler/src/dotty/tools/dotc/core/TypeErasure.scala
+++ b/compiler/src/dotty/tools/dotc/core/TypeErasure.scala
@@ -377,6 +377,8 @@ class TypeErasure(isJava: Boolean, semiEraseVCs: Boolean, isConstructor: Boolean
defn.FunctionType(0)
case AndType(tp1, tp2) =>
erasedGlb(this(tp1), this(tp2), isJava)
+ case tp: HKApply =>
+ apply(tp.superType)
case OrType(tp1, tp2) =>
ctx.typeComparer.orType(this(tp1), this(tp2), erased = true)
case tp: MethodType =>
@@ -508,6 +510,8 @@ class TypeErasure(isJava: Boolean, semiEraseVCs: Boolean, isConstructor: Boolean
normalizeClass(sym.asClass).fullName.asTypeName
case defn.ArrayOf(elem) =>
sigName(this(tp))
+ case tp: HKApply =>
+ sigName(tp.superType)
case JavaArrayType(elem) =>
sigName(elem) ++ "[]"
case tp: TermRef =>