You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am not completely sure if this is related to Nullable. Nullable could be special if there was boxing, but this is just a local variable losing its value after Yield. No boxing is involved in this case.
Possibly it is a more general issue with liveness/storing/restoring of mixed value/ref fields of a struct, just a repro happened to involve nullable.
== To repro:
In shared-generics.cs uncomment 2 scenarios marked with // TODO: uncomment to repro https://github.com/dotnet/runtimelab/issues/3043 and run the test.
The test will fail. It looks like we lose the value here:
publicstaticasync2Task<T> StaticReturnClassType(Tvalue){// value != null awaitTask.Yield();// value == nullreturnvalue;}
Also, I think, while modifying the test with Console.WriteLine(value) in various places to see where exactly the value is lost, I think I have seen the scenario to pass, but lost track to what shape the test was and can't make it pass again. There is a thought that we may be dealing with uninitialized data, maybe...
The text was updated successfully, but these errors were encountered:
I am not completely sure if this is related to Nullable. Nullable could be special if there was boxing, but this is just a local variable losing its value after Yield. No boxing is involved in this case.
Possibly it is a more general issue with liveness/storing/restoring of mixed value/ref fields of a struct, just a repro happened to involve nullable.
== To repro:
In
shared-generics.cs
uncomment 2 scenarios marked with// TODO: uncomment to repro https://github.com/dotnet/runtimelab/issues/3043
and run the test.The test will fail. It looks like we lose the value here:
Also, I think, while modifying the test with
Console.WriteLine(value)
in various places to see where exactly the value is lost, I think I have seen the scenario to pass, but lost track to what shape the test was and can't make it pass again. There is a thought that we may be dealing with uninitialized data, maybe...The text was updated successfully, but these errors were encountered: