@@ -180,8 +180,8 @@ class Definitions {
180180 private def enterT1ParameterlessMethod (cls : ClassSymbol , name : TermName , resultTypeFn : PolyType => Type , flags : FlagSet ) =
181181 enterPolyMethod(cls, name, 1 , resultTypeFn, flags)
182182
183- private def mkArityArray (name : String , arity : Int , countFrom : Int ): Array [TypeRef ] = {
184- val arr = new Array [TypeRef ](arity + 1 )
183+ private def mkArityArray (name : String , arity : Int , countFrom : Int ): Array [TypeRef | Null ] = {
184+ val arr = new Array [TypeRef | Null ](arity + 1 )
185185 for (i <- countFrom to arity) arr(i) = requiredClassRef(name + i)
186186 arr
187187 }
@@ -1260,7 +1260,7 @@ class Definitions {
12601260
12611261 @ tu lazy val untestableClasses : Set [Symbol ] = Set (NothingClass , NullClass , SingletonClass )
12621262
1263- @ tu lazy val AbstractFunctionType : Array [TypeRef ] = mkArityArray(" scala.runtime.AbstractFunction" , MaxImplementedFunctionArity , 0 )
1263+ @ tu lazy val AbstractFunctionType : Array [TypeRef ] = mkArityArray(" scala.runtime.AbstractFunction" , MaxImplementedFunctionArity , 0 ). asInstanceOf [ Array [ TypeRef ]]
12641264 val AbstractFunctionClassPerRun : PerRun [Array [Symbol ]] = new PerRun (AbstractFunctionType .map(_.symbol.asClass))
12651265 def AbstractFunctionClass (n : Int )(using Context ): Symbol = AbstractFunctionClassPerRun ()(using ctx)(n)
12661266
@@ -1283,7 +1283,7 @@ class Definitions {
12831283 .withDefaultValue(holderImpl(" LazyRef" ))
12841284 })
12851285
1286- @ tu lazy val TupleType : Array [TypeRef ] = mkArityArray(" scala.Tuple" , MaxTupleArity , 1 )
1286+ @ tu lazy val TupleType : Array [TypeRef | Null ] = mkArityArray(" scala.Tuple" , MaxTupleArity , 1 )
12871287
12881288 private class FunType (prefix : String ):
12891289 private var classRefs : Array [TypeRef | Null ] = new Array (22 )
@@ -1497,15 +1497,15 @@ class Definitions {
14971497 def isTupleNType (tp : Type )(using Context ): Boolean = {
14981498 val arity = tp.dealias.argInfos.length
14991499 arity <= MaxTupleArity && {
1500- val tupletp : TypeRef | Null = TupleType (arity)
1500+ val tupletp = TupleType (arity)
15011501 tupletp != null && tp.isRef(tupletp.symbol)
15021502 }
15031503 }
15041504
15051505 def tupleType (elems : List [Type ]): Type = {
15061506 val arity = elems.length
15071507 if 0 < arity && arity <= MaxTupleArity then
1508- val tupletp : TypeRef | Null = TupleType (arity)
1508+ val tupletp = TupleType (arity)
15091509 if tupletp != null then tupletp.appliedTo(elems)
15101510 else TypeOps .nestedPairs(elems)
15111511 else TypeOps .nestedPairs(elems)
0 commit comments