Cole Tobin

Results 94 comments of Cole Tobin

Also of note, the `` tags are not typeset correctly in the popover.

@scott-parkhill Apparently, their [documentation overlay parser](https://github.com/OmniSharp/omnisharp-vscode/blob/d1785942e51f3afee1d8e62b406ee46b35168c63/src/features/documentation.ts) only cares about `` and nothing else. That file hasn't been touched in two years.

The issue is how the weaver replaces field assignments with `set_X` calls in the constructor. For example, in my program, the weaver was generating [this IL](https://github.com/dotnet/roslyn/issues/61055#issuecomment-1113847592=): ``` IL_007f: ldarg.0 //...

My guess is: because the `Nullable` is being assigned with the default value, there's no `stfld` opcode generated, but the weaver just grabbed the first opcode of any type where...

It seems the compiler special cases `Nullable` to not generate a `stfld` opcode when set to `null`. In fact, this code: ```cs using System; public class Program { public Nullable...

Changing the `record` type to a `class` type with public getters and setters (obviously) fixes the exception.

The emission of the `pop` opcode is indeed happening inside XamlX: https://github.com/kekekeks/XamlX/blob/d990d63774a04d2a4b3d52e626a90ee68e19e2b6/src/XamlX/IL/XamlILEmitterExtensions.cs#L23-L24 ```cs if (swallowResult && !(method.ReturnType.Namespace == "System" && method.ReturnType.Name == "Void")) emitter.Pop(); ```

Ah, that would explain why there's a setter. You're right about them being modifiable; a `record` is supposed to be immutable (barring tricks like reflection). For me, I don't think...

I see the PR in XamlX has been merged. Should we close this now?