FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

System.Numerics.Tensors SetSlice safety · Issue #106535 · dotnet/runtime · GitHub

Repository navigation

System.Numerics.Tensors SetSlice safety #106535

Description

Description

new TensorSpan<double>(array: myArrayOfLength1, lengths: new IntPtr[] { 2 }, strides: new IntPtr[]{ 0 })
.SetSlice(new TensorSpan<double>(new double[] {1d, 2d}), new NRange[] { ..2 });

writes the 2d to &myArrayOfLength1 + 1 wherever that may be.

Reproduction Steps

using System.Buffers;
using System.Diagnostics.CodeAnalysis;
using System.Numerics.Tensors;

namespace ConsoleApp1;

public abstract class Program
{
	[Experimental("SYSLIB5001")]
	public static unsafe void Main()
	{
		var ar = new double[1];
		fixed (double* pointer = ar)
		{
			var a = new TensorSpan<double>(ar.AsSpan()[..1], new IntPtr[] { 2 }, new IntPtr[]{ 0 });
			a.SetSlice(new TensorSpan<double>(new double[] {1, 3}), new NRange[] { ..2 });
			var x = *pointer;
			var y = *(pointer + 1);
			Console.WriteLine((x, y));  // (1, 2)
		}
	}
}

Expected behavior

2d should be written to the single entry of the TensorSpan.

Actual behavior

.

Regression?

No response

Known Workarounds

No response

Configuration

.NET8, Ubuntu22, x64

Other information

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions


    Back | FazBrowse Home | New Git URL