fsharp
fsharp copied to clipboard
The F# compiler, F# core library, F# language service, and F# tooling integration for Visual Studio
If the `static do` block of a class attempts to call a `protected static` member of a base class, a MethodAccessException is raised because the code from the do block...
I intend to try to refactor F# core into at least two assemblies. fscorlib --- Core types supporting runtime scenarios FSharp.Core --- Types supporting runtime and compilation scenarios The benefit...
The showIt function in the following has incorrect code in Debug builds (the bug exists in both F# 7 and 8): ``` open System open System.Buffers open System.Text let inline...
Examples of how new CLASP package is referenced in other projects: > Eg. razor - [razor/src/Razor/src/Microsoft.AspNetCore.Razor.LanguageServer/Microsoft.AspNetCore.Razor.LanguageServer.csproj at 6ada92f5fc25f916afccc41d3dce2c618d9fcd11 · dotnet/razor (github.com)](https://github.com/dotnet/razor/blob/6ada92f5fc25f916afccc41d3dce2c618d9fcd11/src/Razor/src/Microsoft.AspNetCore.Razor.LanguageServer/Microsoft.AspNetCore.Razor.LanguageServer.csproj#L26) or webtools - https://devdiv.visualstudio.com/DevDiv/_git/VS?path=/src/Xaml/Designer/Source/CodeAnalysis/CodeAnalysis.csproj&version=GBmain&line=26&lineEnd=27&lineStartColumn=1&lineEndColumn=1&lineStyle=plain&_a=contents
### Issue description As of now, nullness related errors are coming from comparing pairs of types in the constraint solver, and all the nullness warnings come from here. Which means...
There are 2 ways to do null-related pattern matching now: ```fsharp let len1 (str: string | null) = match str with | Null -> -1 | NonNull s -> s.Length...
### Issue description Since .fsx files do not have project options, it is not possible to pass in `/checknulls+` except for passing command line switches directly. Make it possible (`#nullness-checking`...
I think it would be good to be more explicit about nullness inference happening behind the scenes. For the code ``` let xs = [| ""; ""; null |] ```...
### Issue description Parser recovery rule for a mistake of writing ` null | type` instead of `type | null`. Examples: ```let notAValue: null | string = "hi"``` > test.fs(1,21):...