fsharp
fsharp copied to clipboard
The F# compiler, F# core library, F# language service, and F# tooling integration for Visual Studio
Adds recovery when it's not possible to unify the method type with the expected type: ```fsharp if true then "".ToString ``` The error would lead to the method symbol not...
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....
Error when using `[]` with caller information attributes in delegate definitions. ```fsharp > type A = delegate of [] a: string -> unit;; type A = delegate of [] a:...
Once again, I ran into a bug related to TaskSeq for loops. **Repro steps** Repo: https://github.com/mrakgr/taskseq_bug_report/tree/bug2 ```fsharp module ICF_Main.Main open System.Threading.Channels open FSharp.Control module gRPC = type ICF_Proxy_Service_Choices = |...
## Context 👋 .NET 10 is bringing support for [Runtime-Async](https://github.com/dotnet/runtime/blob/main/docs/design/specs/runtime-async.md). I started playing around with it in an [IcedTasks PR](https://github.com/TheAngryByrd/IcedTasks/pull/62). However, I noticed some of benchmarks being off considerably. One...
The `[]` approach to attaching an attribute to the return property of a method/function does not work on class (static) methods. ```fsharp open System.Reflection open Microsoft.FSharp.Quotations.Patterns type SomeAttribute() = inherit...
Currently only parallel reference resolution is supported. (see #18998) The following do not work and are automatically disabled for `deterministic` builds: - [x] Parallel ILX Gen - [x] Graph based...
Implement #elif preprocessor directive Fix for https://github.com/fsharp/fslang-suggestions/issues/1370 ## Checklist - [x] Test cases added - [ ] Performance benchmarks added in case of performance changes - [x] Release notes entry...
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) = (#...