Метод вызова .NET 8 RC1 с выдачей UnsafeAccessorAttribute Внутренняя ошибка CLRC#

Место общения программистов C#
Anonymous
Метод вызова .NET 8 RC1 с выдачей UnsafeAccessorAttribute Внутренняя ошибка CLR

Сообщение Anonymous »

Я тестирую новую функцию .NET 8 для доступа к частному полю. Вот код и настройки проекта:

Код: Выделить всё

using System;
using System.Runtime.CompilerServices;

var t = new Test();
var size = Caller.GetSize(t);

Console.WriteLine(size);

public class Caller
{
[UnsafeAccessor(UnsafeAccessorKind.Field, Name = "_size")]
public static extern int GetSize(Test c);
}

public class Test
{
private int _size = 4;
}

Код: Выделить всё



Exe
net8.0



Но это вызывает исключение:

Код: Выделить всё

Fatal error. Internal CLR error. (0x80131506)
at Caller.GetSize(Test)
at Program.$(System.String[])
MSBuild 17
Есть идеи?
Я ожидал вывода на консоль: 4

Подробнее здесь: https://stackoverflow.com/questions/772 ... -clr-error

Вернуться в «C#»