-
Enhancement
-
Resolution: Won't Fix
-
P3
-
repo-valhalla
Add a flag to disable array covariance to experiment with for lw2
Design discussions wish to look at restricting array covariance.
LW1 rules:
* [QFoo; <: [LFoo; <: [Ljava/lang/Object;
LW2 proposed rules:
* [LFoo; <: [Ljava/lang/Object;
* [QFoo; <: Ljava/lang/Object; (i.e. no array covariance for unboxed value arrays
** however System.arraycopy accepts both [LFoo; and [QFoo; as source and destination (i.e. mix array of "boxed" values and array "unboxed" values)
Design discussions wish to look at restricting array covariance.
LW1 rules:
* [QFoo; <: [LFoo; <: [Ljava/lang/Object;
LW2 proposed rules:
* [LFoo; <: [Ljava/lang/Object;
* [QFoo; <: Ljava/lang/Object; (i.e. no array covariance for unboxed value arrays
** however System.arraycopy accepts both [LFoo; and [QFoo; as source and destination (i.e. mix array of "boxed" values and array "unboxed" values)