diff --git a/csharp/ql/test/library-tests/conversion/span/Span.cs b/csharp/ql/test/library-tests/conversion/span/Span.cs index fd2fd3a536f..ae1ac5b4086 100644 --- a/csharp/ql/test/library-tests/conversion/span/Span.cs +++ b/csharp/ql/test/library-tests/conversion/span/Span.cs @@ -61,6 +61,17 @@ public class C string s = ""; ReadOnlySpan charReadOnlySpan = s; // string -> ReadOnlySpan + // Various ref type conversions + Derived[] derivedArray = []; + ReadOnlySpan baseReadOnlySpan; + baseReadOnlySpan = derivedArray; // Derived[] -> ReadOnlySpan + + ReadOnlySpan objectReadOnlySpan; + objectReadOnlySpan = stringArray; // string[] -> ReadOnlySpan + + byte[][] byteByteArray = []; + objectReadOnlySpan = byteByteArray; // byte[][] -> ReadOnlySpan + // No conversion possible except for identity. ReadOnlySpan> invariantInterfaceBaseReadOnlySpan; ReadOnlySpan> invariantInterfaceDerivedReadOnlySpan; diff --git a/csharp/ql/test/library-tests/conversion/span/span.expected b/csharp/ql/test/library-tests/conversion/span/span.expected index 5a5a2bc6f39..1792d46898c 100644 --- a/csharp/ql/test/library-tests/conversion/span/span.expected +++ b/csharp/ql/test/library-tests/conversion/span/span.expected @@ -1,25 +1,47 @@ | ContravariantInterface[] | ReadOnlySpan> | | ContravariantInterface[] | ReadOnlySpan> | +| ContravariantInterface[] | ReadOnlySpan | | ContravariantInterface[] | Span> | | CovariantInterface[] | ReadOnlySpan> | | CovariantInterface[] | ReadOnlySpan> | +| CovariantInterface[] | ReadOnlySpan | | CovariantInterface[] | Span> | +| Derived[] | ReadOnlySpan | +| Derived[] | ReadOnlySpan | | InvariantInterface[] | ReadOnlySpan> | +| InvariantInterface[] | ReadOnlySpan | | InvariantInterface[] | Span> | | MixedInterface[] | ReadOnlySpan> | | MixedInterface[] | ReadOnlySpan> | +| MixedInterface[] | ReadOnlySpan | | MixedInterface[] | Span> | +| ReadOnlySpan | ReadOnlySpan | | ReadOnlySpan> | ReadOnlySpan> | +| ReadOnlySpan> | ReadOnlySpan | +| ReadOnlySpan> | ReadOnlySpan | +| ReadOnlySpan> | ReadOnlySpan | | ReadOnlySpan> | ReadOnlySpan> | +| ReadOnlySpan> | ReadOnlySpan | +| ReadOnlySpan> | ReadOnlySpan | +| ReadOnlySpan> | ReadOnlySpan | +| ReadOnlySpan> | ReadOnlySpan | | ReadOnlySpan> | ReadOnlySpan> | +| ReadOnlySpan> | ReadOnlySpan | +| ReadOnlySpan | ReadOnlySpan | | Span> | ReadOnlySpan> | | Span> | ReadOnlySpan> | +| Span> | ReadOnlySpan | | Span> | ReadOnlySpan> | | Span> | ReadOnlySpan> | +| Span> | ReadOnlySpan | | Span> | ReadOnlySpan> | +| Span> | ReadOnlySpan | | Span> | ReadOnlySpan> | | Span> | ReadOnlySpan> | +| Span> | ReadOnlySpan | +| Span | ReadOnlySpan | | Span | ReadOnlySpan | +| String[] | ReadOnlySpan | | String[] | ReadOnlySpan | | String[] | Span | | string | ReadOnlySpan |