diff options
author | Martin Odersky <odersky@gmail.com> | 2016-07-14 22:58:29 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2016-07-14 22:58:36 +0200 |
commit | 6de06305893eb1fc5d14d6058f239f7854bb6d54 (patch) | |
tree | d09a150c5b89c9fe46ab40d32d9493085444585e /src/dotty/tools/dotc | |
parent | bef40b45f6c15bf55fa73ea7923cb4da74cf77d0 (diff) | |
download | dotty-6de06305893eb1fc5d14d6058f239f7854bb6d54.tar.gz dotty-6de06305893eb1fc5d14d6058f239f7854bb6d54.tar.bz2 dotty-6de06305893eb1fc5d14d6058f239f7854bb6d54.zip |
Fix erasure of Java Array[T]
Should be erased to Object[], not Object.
Diffstat (limited to 'src/dotty/tools/dotc')
-rw-r--r-- | src/dotty/tools/dotc/core/TypeErasure.scala | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/core/TypeErasure.scala b/src/dotty/tools/dotc/core/TypeErasure.scala index 39d02e069..0894f34b2 100644 --- a/src/dotty/tools/dotc/core/TypeErasure.scala +++ b/src/dotty/tools/dotc/core/TypeErasure.scala @@ -389,7 +389,7 @@ class TypeErasure(isJava: Boolean, semiEraseVCs: Boolean, isConstructor: Boolean def arrayErasure(tpToErase: Type) = erasureFn(isJava, semiEraseVCs = false, isConstructor, wildcardOK)(tpToErase) if (elemtp derivesFrom defn.NullClass) JavaArrayType(defn.ObjectType) - else if (isUnboundedGeneric(elemtp)) defn.ObjectType + else if (isUnboundedGeneric(elemtp) && !isJava) defn.ObjectType else JavaArrayType(arrayErasure(elemtp)) } |