IS4
IS4
# Extending patterns to "as" * [x] Proposed * [ ] Prototype: Not Started * [ ] Implementation: Not Started * [ ] Specification: Not Started ## Summary [summary]: #summary...
### Type of issue Outdated article ### Description The paragraph: > Anonymous records are [nominal types](https://en.wikipedia.org/wiki/Nominal_type_system). They are best thought of as named [record](https://learn.microsoft.com/en-us/dotnet/fsharp/language-reference/records) types (which are also nominal) that...
**Repro steps** ```fs type Expr = | Number of int | Add of Expr * Expr module Evaluator = [] let rec private eval expr (cont: int -> unit) =...
**Repro steps** ```fs [] type BigInteger) : System.Numerics.BigInteger = Unchecked.defaultof ``` **Expected behavior** The code should be either parsed as valid, defining a refined type with additional usable members, or...
Using an object expression in a struct that depends on `this` or primary constructor parameters in the arguments to the object's constructor results in a `class` being emitted with a...
When a computation builder defines a `TryWith` method whose exception handler does not actually take an `Exception` as its parameter, an invalid CIL is produced from such a `try`/`with` construction....
When a non-`Exception` object is thrown (from CIL or other languages that support it), it cannot be caught in F# by default. **Repro steps** ```fs let throwobj (x:obj) = (#...
## Description Fixes a typo in compiler diagnostics: * Changed `of` to `or` in FS3519. ## Checklist - [ ] Test cases added - [ ] Performance benchmarks added in...
Function stubs (native functions) that explicitly return an array don't seem to be handled well by the compiler. First, there are two asserts that fail when such a function is...
**I propose we** have a way to _produce_ (i.e. not necessarily consume from within F#) type parameters that are covariant/contravariant, per .NET's rules (allowed only in input/output positions, respectively). Custom...