@@ -112,7 +112,9 @@ public void Test_ReadOnlySpan2DT_Array1DConstructor()
112112 Assert . AreEqual ( span2d [ 0 , 0 ] , 2 ) ;
113113 Assert . AreEqual ( span2d [ 1 , 1 ] , 6 ) ;
114114
115- Assert . ThrowsException < ArrayTypeMismatchException > ( ( ) => new ReadOnlySpan2D < object > ( new string [ 1 ] , 1 , 1 ) ) ;
115+ // Same for ReadOnlyMemory2D<T>, we need to check that covariant array conversions are allowed
116+ _ = new ReadOnlySpan2D < object > ( new string [ 1 ] , 1 , 1 ) ;
117+
116118 Assert . ThrowsException < ArgumentOutOfRangeException > ( ( ) => new ReadOnlySpan2D < int > ( array , - 99 , 1 , 1 , 1 ) ) ;
117119 Assert . ThrowsException < ArgumentOutOfRangeException > ( ( ) => new ReadOnlySpan2D < int > ( array , 0 , - 10 , 1 , 1 ) ) ;
118120 Assert . ThrowsException < ArgumentOutOfRangeException > ( ( ) => new ReadOnlySpan2D < int > ( array , 0 , 1 , 1 , - 1 ) ) ;
@@ -139,7 +141,7 @@ public void Test_ReadOnlySpan2DT_Array2DConstructor_1()
139141 Assert . AreEqual ( span2d [ 0 , 1 ] , 2 ) ;
140142 Assert . AreEqual ( span2d [ 1 , 2 ] , 6 ) ;
141143
142- Assert . ThrowsException < ArrayTypeMismatchException > ( ( ) => new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] ) ) ;
144+ _ = new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] ) ;
143145 }
144146
145147 [ TestCategory ( "ReadOnlySpan2DT" ) ]
@@ -161,7 +163,9 @@ public void Test_ReadOnlySpan2DT_Array2DConstructor_2()
161163 Assert . AreEqual ( span2d [ 0 , 0 ] , 2 ) ;
162164 Assert . AreEqual ( span2d [ 1 , 1 ] , 6 ) ;
163165
164- Assert . ThrowsException < ArrayTypeMismatchException > ( ( ) => new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] , 0 , 0 , 2 , 2 ) ) ;
166+ _ = new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] ) ;
167+
168+ Assert . ThrowsException < ArgumentOutOfRangeException > ( ( ) => new ReadOnlySpan2D < object > ( new string [ 1 , 2 ] , 0 , 0 , 2 , 2 ) ) ;
165169 }
166170
167171 [ TestCategory ( "ReadOnlySpan2DT" ) ]
0 commit comments