aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/pickling/UnPickler.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/dotty/tools/dotc/core/pickling/UnPickler.scala')
-rw-r--r--src/dotty/tools/dotc/core/pickling/UnPickler.scala5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/core/pickling/UnPickler.scala b/src/dotty/tools/dotc/core/pickling/UnPickler.scala
index dfb6be7d6..b036a8170 100644
--- a/src/dotty/tools/dotc/core/pickling/UnPickler.scala
+++ b/src/dotty/tools/dotc/core/pickling/UnPickler.scala
@@ -36,8 +36,9 @@ object UnPickler {
*/
def arrayToRepeated(tp: Type)(implicit ctx: Context): Type = tp match {
case tp @ MethodType(paramNames, paramTypes) =>
- val (tycon, elemtp0 :: Nil) = paramTypes.last.splitArgs
- assert(tycon.typeSymbol == defn.ArrayClass, tp)
+ val lastArg = paramTypes.last
+ assert(lastArg.typeSymbol == defn.ArrayClass)
+ val elemtp0 :: Nil = lastArg.typeArgs
val elemtp = elemtp0 match {
case AndType(t1, t2) if t1.typeSymbol.isAbstractType && t2.typeSymbol == defn.ObjectClass =>
t1 // drop intersection with Object for abstract types in varargs. UnCurry can handle them.