IS4
IS4
I got the same issue on Fedora 42. Is this expected to work?
There are two options how I see this being addressed: * Apply `RuntimeCompatibilityAttribute` implicitly. This makes it behave exactly like C# in this situation. * Change `castclass` to `isinst`. It...
@T-Gro I am not aware of a concrete case where this would happen. I can see interop with C++/CLI running into the possibility, but non-CLS exceptions are seldom used in...
I see a few obvious ways out of this issue: * Disallow it, i.e. `try`/`with` in a computation must always be constrained to `Exception`. This is better than the current...
That's kinda sophistry. Sure, you can't have a normal `try`/`with` with non-exceptions (ignoring CIL shenanigans) because .NET supports only one mechanism of exceptional control flow, but that's what computation expressions...
Just to be clear, would `#exn` or anything that constrains it to a type derived from `Exception` be okay? I tried to look it up in the specification but couldn't...
I am not a big fan of warnings for "intentional" things. Without context, they don't make any sense: * Why should the language warn about the use of a particular...
> ```fs > type C = > member _.A() : int = 0 > > interface IB with > // The override 'A: unit -> int' implements more than one...
Yes, but F# uses `interface IB with` so it is already "semi-explicit" in terms of which interface is intended. Of course this still allows binding to inherited interface members, but...
@brianrourkeboll Sorry, I have updated it with an example. `&` works on record properties because F# can link the property to its backing field and use that, effectively inlining the...