diff --git a/.vscode/launch.json b/.vscode/launch.json
index a0118990e74..8853be0a138 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -23,7 +23,7 @@
// TODO: Shall we assume that it's already been built, or build it every time we debug?
// "preLaunchTask": "Build (Debug)",
// If you have changed target frameworks, make sure to update the program p
- "program": "${workspaceFolder}/artifacts/bin/fsi/Debug/net7.0/fsi.dll",
+ "program": "${workspaceFolder}/artifacts/bin/fsi/Debug/net8.0/fsi.dll",
"args": [
"${input:fsiArgsPrompt}"
],
@@ -52,7 +52,7 @@
// TODO: Shall we assume that it's already been built, or build it every time we debug?
// "preLaunchTask": "Build (Debug)",
// If you have changed target frameworks, make sure to update the program path.
- "program": "${workspaceFolder}/artifacts/bin/fsc/Debug/net7.0/fsc.dll",
+ "program": "${workspaceFolder}/artifacts/bin/fsc/Debug/net8.0/fsc.dll",
"args": [
"${input:fscArgsPrompt}"
],
diff --git a/DEVGUIDE.md b/DEVGUIDE.md
index 1511ef391e6..8e043b4dd5b 100644
--- a/DEVGUIDE.md
+++ b/DEVGUIDE.md
@@ -130,7 +130,7 @@ To use your custom build of `Fsc`, add the `DotnetFscCompilerPath` property to y
```xml
- D:\Git\fsharp\artifacts\bin\fsc\Debug\net7.0\fsc.dll
+ D:\Git\fsharp\artifacts\bin\fsc\Debug\net8.0\fsc.dll
```
diff --git a/Directory.Build.props b/Directory.Build.props
index baf55b19a83..879bd89410f 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -30,8 +30,8 @@
$(MSBuildThisFileDirectory)artifacts/$(ArtifactsDir)/bin/$(MSBuildProjectName)/$(Configuration)/$(ArtifactsDir)obj/$(MSBuildProjectName)/$(Configuration)/
- $(ArtifactsDir)/bin/fslex/$(Configuration)/net7.0/fslex.dll
- $(ArtifactsDir)/bin/fsyacc/$(Configuration)/net7.0/fsyacc.dll
+ $(ArtifactsDir)/bin/fslex/$(Configuration)/net8.0/fslex.dll
+ $(ArtifactsDir)/bin/fsyacc/$(Configuration)/net8.0/fsyacc.dll
diff --git a/FSharpTests.Directory.Build.props b/FSharpTests.Directory.Build.props
index 2cc7df4372c..03c26b4b075 100644
--- a/FSharpTests.Directory.Build.props
+++ b/FSharpTests.Directory.Build.props
@@ -22,18 +22,18 @@
$([System.IO.Path]::GetDirectoryName('$(DOTNET_HOST_PATH)'))dotnet.exedotnet
- $(MSBuildThisFileDirectory)artifacts\bin\fsc\$(Configuration)\net7.0\fsc.dll
+ $(MSBuildThisFileDirectory)artifacts\bin\fsc\$(Configuration)\net8.0\fsc.dll$([System.IO.Path]::GetDirectoryName('$(DOTNET_HOST_PATH)'))dotnet.exedotnet
- $(MSBuildThisFileDirectory)artifacts\bin\fsi\$(Configuration)\net7.0\fsi.dll
+ $(MSBuildThisFileDirectory)artifacts\bin\fsi\$(Configuration)\net8.0\fsi.dll
<_FSharpBuildTargetFramework Condition="'$(MSBuildRuntimeType)'!='Core'">net472
- <_FSharpBuildTargetFramework Condition="'$(MSBuildRuntimeType)'=='Core'">net7.0
+ <_FSharpBuildTargetFramework Condition="'$(MSBuildRuntimeType)'=='Core'">net8.0
<_FSharpBuildBinPath>$(MSBuildThisFileDirectory)artifacts\bin\fsc\$(Configuration)\$(_FSharpBuildTargetFramework)
$(_FSharpBuildBinPath)\FSharp.Build.dll
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index ad765590ade..51e87c93131 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -86,11 +86,11 @@ stages:
# Signed build #
#-------------------------------------------------------------------------------------------------------------------#
- ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
- - ${{ if eq(variables['Build.SourceBranch'], 'refs/heads/release/dev17.7') }}:
+ - ${{ if eq(variables['Build.SourceBranch'], 'refs/heads/release/dev17.8') }}:
- template: /eng/common/templates/job/onelocbuild.yml
parameters:
MirrorRepo: fsharp
- MirrorBranch: release/dev17.7
+ MirrorBranch: release/dev17.8
LclSource: lclFilesfromPackage
LclPackageId: 'LCL-JUNO-PROD-FSHARP'
- template: /eng/common/templates/jobs/jobs.yml
@@ -781,8 +781,8 @@ stages:
- ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
- template: eng/release/insert-into-vs.yml
parameters:
- componentBranchName: refs/heads/release/dev17.7
- insertTargetBranch: rel/d17.7
+ componentBranchName: refs/heads/release/dev17.8
+ insertTargetBranch: main
insertTeamEmail: fsharpteam@microsoft.com
insertTeamName: 'F#'
completeInsertion: 'auto'
diff --git a/buildtools/AssemblyCheck/AssemblyCheck.fsproj b/buildtools/AssemblyCheck/AssemblyCheck.fsproj
index d73a74cc8c4..46ffb722cd4 100644
--- a/buildtools/AssemblyCheck/AssemblyCheck.fsproj
+++ b/buildtools/AssemblyCheck/AssemblyCheck.fsproj
@@ -2,7 +2,7 @@
Exe
- net7.0
+ net8.0truefalse
diff --git a/buildtools/checkpackages/FSharp.Compiler.Service_notshipped.fsproj b/buildtools/checkpackages/FSharp.Compiler.Service_notshipped.fsproj
index a9166e35340..514b1f4ddf6 100644
--- a/buildtools/checkpackages/FSharp.Compiler.Service_notshipped.fsproj
+++ b/buildtools/checkpackages/FSharp.Compiler.Service_notshipped.fsproj
@@ -3,7 +3,7 @@
- net7.0
+ net8.0true$(MSBuildProjectDirectory)\..\..\artifacts\tmp\$([System.Guid]::NewGuid())$(CachePath)\bin
diff --git a/buildtools/checkpackages/FSharp.Core_notshipped.fsproj b/buildtools/checkpackages/FSharp.Core_notshipped.fsproj
index 7299f5aec7a..f104ff30fe7 100644
--- a/buildtools/checkpackages/FSharp.Core_notshipped.fsproj
+++ b/buildtools/checkpackages/FSharp.Core_notshipped.fsproj
@@ -3,7 +3,7 @@
- net7.0
+ ne87.0
diff --git a/buildtools/fslex/fslex.fsproj b/buildtools/fslex/fslex.fsproj
index 5a406cf9d0a..674dde7c759 100644
--- a/buildtools/fslex/fslex.fsproj
+++ b/buildtools/fslex/fslex.fsproj
@@ -2,7 +2,7 @@
Exe
- net7.0
+ net8.0truefalseLatestMajor
diff --git a/buildtools/fsyacc/fsyacc.fsproj b/buildtools/fsyacc/fsyacc.fsproj
index abaed7441f6..fc072b7cf02 100644
--- a/buildtools/fsyacc/fsyacc.fsproj
+++ b/buildtools/fsyacc/fsyacc.fsproj
@@ -2,7 +2,7 @@
Exe
- net7.0
+ net8.0truefalseLatestMajor
diff --git a/eng/Build.ps1 b/eng/Build.ps1
index 3be5cf44a23..b713a86effa 100644
--- a/eng/Build.ps1
+++ b/eng/Build.ps1
@@ -222,11 +222,11 @@ function Process-Arguments() {
function Update-Arguments() {
if ($script:noVisualStudio) {
- $script:bootstrapTfm = "net7.0"
+ $script:bootstrapTfm = "net8.0"
$script:msbuildEngine = "dotnet"
}
- if ($bootstrapTfm -eq "net7.0") {
+ if ($bootstrapTfm -eq "net8.0") {
if (-Not (Test-Path "$ArtifactsDir\Bootstrap\fsc\fsc.runtimeconfig.json")) {
$script:bootstrap = $True
}
@@ -248,7 +248,7 @@ function BuildSolution([string] $solutionName, $nopack) {
$officialBuildId = if ($official) { $env:BUILD_BUILDNUMBER } else { "" }
$toolsetBuildProj = InitializeToolset
$quietRestore = !$ci
- $testTargetFrameworks = if ($testCoreClr) { "net7.0" } else { "" }
+ $testTargetFrameworks = if ($testCoreClr) { "net8.0" } else { "" }
# Do not set the property to true explicitly, since that would override value projects might set.
$suppressExtensionDeployment = if (!$deployExtensions) { "/p:DeployExtension=false" } else { "" }
@@ -554,7 +554,7 @@ try {
$script:BuildCategory = "Test"
$script:BuildMessage = "Failure running tests"
$desktopTargetFramework = "net472"
- $coreclrTargetFramework = "net7.0"
+ $coreclrTargetFramework = "net8.0"
if ($testCoreClr) {
$bgJob = TestUsingNUnit -testProject "$RepoRoot\tests\fsharp\FSharpSuite.Tests.fsproj" -targetFramework $coreclrTargetFramework -testadapterpath "$ArtifactsDir\bin\FSharpSuite.Tests\" -asBackgroundJob $true
diff --git a/eng/DumpPackageRoot/DumpPackageRoot.csproj b/eng/DumpPackageRoot/DumpPackageRoot.csproj
index 913463393a8..5cbfdca4db5 100644
--- a/eng/DumpPackageRoot/DumpPackageRoot.csproj
+++ b/eng/DumpPackageRoot/DumpPackageRoot.csproj
@@ -3,7 +3,7 @@
- net7.0
+ net8.0
diff --git a/eng/SourceBuildPrebuiltBaseline.xml b/eng/SourceBuildPrebuiltBaseline.xml
index 12e7e3149d0..44d970f03e1 100644
--- a/eng/SourceBuildPrebuiltBaseline.xml
+++ b/eng/SourceBuildPrebuiltBaseline.xml
@@ -6,7 +6,7 @@
-
+
- 7
+ 80
- 401
+ 1000
@@ -32,7 +32,7 @@
43
- 7
+ 8$(FSBuildVersion)$(FSRevisionVersion)$(FCSMajorVersion).$(FCSMinorVersion).$(FCSBuildVersion)
@@ -47,7 +47,7 @@
12
- 7
+ 80$(FSRevisionVersion)$(FSToolsMajorVersion).$(FSToolsMinorVersion).$(FSToolsBuildVersion)
@@ -56,7 +56,7 @@
17
- 7
+ 8$(VSMajorVersion).0$(VSMajorVersion).$(VSMinorVersion).0$(VSAssemblyVersionPrefix).0
@@ -205,5 +205,11 @@
2.4.25.10.32.2.0
+
+ 1.0.0-prerelease.23452.2
+ 1.0.0-prerelease.23452.2
+ 1.0.0-prerelease.23452.2
+ 1.0.0-prerelease.23452.2
+ 1.0.0-prerelease.23452.2
diff --git a/eng/build-utils.ps1 b/eng/build-utils.ps1
index 2162fc880cf..d5375c29732 100644
--- a/eng/build-utils.ps1
+++ b/eng/build-utils.ps1
@@ -251,9 +251,9 @@ function Make-BootstrapBuild() {
}
Exec-Console $dotnetExe $args
- Copy-Item "$ArtifactsDir\bin\fslex\$bootstrapConfiguration\net7.0" -Destination "$dir\fslex" -Force -Recurse
- Copy-Item "$ArtifactsDir\bin\fsyacc\$bootstrapConfiguration\net7.0" -Destination "$dir\fsyacc" -Force -Recurse
- Copy-Item "$ArtifactsDir\bin\AssemblyCheck\$bootstrapConfiguration\net7.0" -Destination "$dir\AssemblyCheck" -Force -Recurse
+ Copy-Item "$ArtifactsDir\bin\fslex\$bootstrapConfiguration\net8.0" -Destination "$dir\fslex" -Force -Recurse
+ Copy-Item "$ArtifactsDir\bin\fsyacc\$bootstrapConfiguration\net8.0" -Destination "$dir\fsyacc" -Force -Recurse
+ Copy-Item "$ArtifactsDir\bin\AssemblyCheck\$bootstrapConfiguration\net8.0" -Destination "$dir\AssemblyCheck" -Force -Recurse
# prepare compiler
$protoProject = "`"$RepoRoot\proto.sln`""
@@ -269,6 +269,3 @@ function Make-BootstrapBuild() {
return $dir
}
-
-
-
diff --git a/eng/build.sh b/eng/build.sh
index b9f00002e8e..3b992d6bfab 100755
--- a/eng/build.sh
+++ b/eng/build.sh
@@ -264,8 +264,8 @@ function BuildSolution {
MSBuild "$repo_root/buildtools/buildtools.proj" /restore "$bltools" /p:Configuration=$bootstrap_config
mkdir -p "$bootstrap_dir"
- cp -pr $artifacts_dir/bin/fslex/$bootstrap_config/net7.0 $bootstrap_dir/fslex
- cp -pr $artifacts_dir/bin/fsyacc/$bootstrap_config/net7.0 $bootstrap_dir/fsyacc
+ cp -pr $artifacts_dir/bin/fslex/$bootstrap_config/net8.0 $bootstrap_dir/fslex
+ cp -pr $artifacts_dir/bin/fsyacc/$bootstrap_config/net8.0 $bootstrap_dir/fsyacc
fi
if [ ! -f "$bootstrap_dir/fsc.exe" ]; then
local bltools=""
@@ -274,7 +274,7 @@ function BuildSolution {
fi
BuildMessage="Error building bootstrap"
MSBuild "$repo_root/Proto.sln" /restore "$bltools" /p:Configuration=$bootstrap_config
- cp -pr $artifacts_dir/bin/fsc/$bootstrap_config/net7.0 $bootstrap_dir/fsc
+ cp -pr $artifacts_dir/bin/fsc/$bootstrap_config/net8.0 $bootstrap_dir/fsc
fi
fi
@@ -316,7 +316,7 @@ InitializeDotNetCli $restore
BuildSolution
if [[ "$test_core_clr" == true ]]; then
- coreclrtestframework=net7.0
+ coreclrtestframework=net8.0
TestUsingNUnit --testproject "$repo_root/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj" --targetframework $coreclrtestframework --notestfilter
TestUsingNUnit --testproject "$repo_root/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj" --targetframework $coreclrtestframework --notestfilter
TestUsingNUnit --testproject "$repo_root/tests/FSharp.Compiler.UnitTests/FSharp.Compiler.UnitTests.fsproj" --targetframework $coreclrtestframework
@@ -326,7 +326,7 @@ if [[ "$test_core_clr" == true ]]; then
fi
if [[ "$test_compilercomponent_tests" == true ]]; then
- coreclrtestframework=net7.0
+ coreclrtestframework=net8.0
TestUsingNUnit --testproject "$repo_root/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj" --targetframework $coreclrtestframework --notestfilter
fi
diff --git a/eng/test-determinism.ps1 b/eng/test-determinism.ps1
index d62144c10f1..5b9a079f078 100644
--- a/eng/test-determinism.ps1
+++ b/eng/test-determinism.ps1
@@ -380,7 +380,7 @@ try {
$script:bootstrapTfm = "net472"
if ($script:msbuildEngine -eq "dotnet") {
- $script.bootstrapTfm = "net7.0"
+ $script.bootstrapTfm = "net8.0"
}
$bootstrapDir = Make-BootstrapBuild
diff --git a/fcs-samples/EditorService/EditorService.fsproj b/fcs-samples/EditorService/EditorService.fsproj
index 6e5b8d99e30..e4103999fcb 100644
--- a/fcs-samples/EditorService/EditorService.fsproj
+++ b/fcs-samples/EditorService/EditorService.fsproj
@@ -1,7 +1,7 @@
- $(FcsTargetNetFxFramework);net7.0
+ $(FcsTargetNetFxFramework);net8.0trueExefalse
diff --git a/src/Compiler/Driver/FxResolver.fs b/src/Compiler/Driver/FxResolver.fs
index 58d13b33586..db0b6c3d756 100644
--- a/src/Compiler/Driver/FxResolver.fs
+++ b/src/Compiler/Driver/FxResolver.fs
@@ -416,7 +416,7 @@ type internal FxResolver
match runningTfmOpt with
| Some tfm -> tfm
- | _ -> if isRunningOnCoreClr then "net7.0" else "net472"
+ | _ -> if isRunningOnCoreClr then "net8.0" else "net472"
let trySdkRefsPackDirectory =
lazy
diff --git a/src/Compiler/FSharp.Compiler.Service.fsproj b/src/Compiler/FSharp.Compiler.Service.fsproj
index 92276d105ec..fb475ecdf74 100644
--- a/src/Compiler/FSharp.Compiler.Service.fsproj
+++ b/src/Compiler/FSharp.Compiler.Service.fsproj
@@ -521,15 +521,15 @@
- TargetFramework=net7.0
+ TargetFramework=net8.0compile
- TargetFramework=net7.0
+ TargetFramework=net8.0compile
- TargetFramework=net7.0
+ TargetFramework=net8.0compile
diff --git a/src/Compiler/Facilities/LanguageFeatures.fs b/src/Compiler/Facilities/LanguageFeatures.fs
index 9a60cc17136..0cc5370d570 100644
--- a/src/Compiler/Facilities/LanguageFeatures.fs
+++ b/src/Compiler/Facilities/LanguageFeatures.fs
@@ -89,10 +89,11 @@ type LanguageVersion(versionText) =
static let languageVersion50 = 5.0m
static let languageVersion60 = 6.0m
static let languageVersion70 = 7.0m
+ static let languageVersion80 = 8.0m
static let previewVersion = 9999m // Language version when preview specified
- static let defaultVersion = languageVersion70 // Language version when default specified
+ static let defaultVersion = languageVersion80 // Language version when default specified
static let latestVersion = defaultVersion // Language version when latest specified
- static let latestMajorVersion = languageVersion70 // Language version when latestmajor specified
+ static let latestMajorVersion = languageVersion80 // Language version when latestmajor specified
static let validOptions = [| "preview"; "default"; "latest"; "latestmajor" |]
@@ -104,6 +105,7 @@ type LanguageVersion(versionText) =
languageVersion50
languageVersion60
languageVersion70
+ languageVersion80
|]
static let features =
@@ -154,33 +156,35 @@ type LanguageVersion(versionText) =
LanguageFeature.InterfacesWithAbstractStaticMembers, languageVersion70
LanguageFeature.SelfTypeConstraints, languageVersion70
+ // F# 8.0
+ LanguageFeature.AccessorFunctionShorthand, languageVersion80
+ LanguageFeature.MatchNotAllowedForUnionCaseWithNoData, languageVersion80
+ LanguageFeature.CSharpExtensionAttributeNotRequired, languageVersion80
+ LanguageFeature.ErrorForNonVirtualMembersOverrides, languageVersion80
+ LanguageFeature.WarningWhenInliningMethodImplNoInlineMarkedFunction, languageVersion80
+ LanguageFeature.EscapeDotnetFormattableStrings, languageVersion80
+ LanguageFeature.ArithmeticInLiterals, languageVersion80
+ LanguageFeature.ErrorReportingOnStaticClasses, languageVersion80
+ LanguageFeature.TryWithInSeqExpression, languageVersion80
+ LanguageFeature.WarningWhenCopyAndUpdateRecordChangesAllFields, languageVersion80
+ LanguageFeature.StaticMembersInInterfaces, languageVersion80
+ LanguageFeature.NonInlineLiteralsAsPrintfFormat, languageVersion80
+ LanguageFeature.NestedCopyAndUpdate, languageVersion80
+ LanguageFeature.ExtendedStringInterpolation, languageVersion80
+ LanguageFeature.WarningWhenMultipleRecdTypeChoice, languageVersion80
+ LanguageFeature.ImprovedImpliedArgumentNames, languageVersion80
+ LanguageFeature.DiagnosticForObjInference, languageVersion80
+ LanguageFeature.WarningWhenTailRecAttributeButNonTailRecUsage, languageVersion80
+ LanguageFeature.StaticLetInRecordsDusEmptyTypes, languageVersion80
+ LanguageFeature.StrictIndentation, languageVersion80
+ LanguageFeature.ConstraintIntersectionOnFlexibleTypes, languageVersion80
+ LanguageFeature.WhileBang, languageVersion80
+ LanguageFeature.ExtendedFixedBindings, languageVersion80
+ LanguageFeature.PreferStringGetPinnableReference, languageVersion80
+
// F# preview
LanguageFeature.FromEndSlicing, previewVersion
- LanguageFeature.AccessorFunctionShorthand, previewVersion
- LanguageFeature.MatchNotAllowedForUnionCaseWithNoData, previewVersion
- LanguageFeature.CSharpExtensionAttributeNotRequired, previewVersion
- LanguageFeature.ErrorForNonVirtualMembersOverrides, previewVersion
- LanguageFeature.WarningWhenInliningMethodImplNoInlineMarkedFunction, previewVersion
- LanguageFeature.EscapeDotnetFormattableStrings, previewVersion
- LanguageFeature.ArithmeticInLiterals, previewVersion
- LanguageFeature.ErrorReportingOnStaticClasses, previewVersion
- LanguageFeature.TryWithInSeqExpression, previewVersion
- LanguageFeature.WarningWhenCopyAndUpdateRecordChangesAllFields, previewVersion
- LanguageFeature.StaticMembersInInterfaces, previewVersion
- LanguageFeature.NonInlineLiteralsAsPrintfFormat, previewVersion
- LanguageFeature.NestedCopyAndUpdate, previewVersion
- LanguageFeature.ExtendedStringInterpolation, previewVersion
- LanguageFeature.WarningWhenMultipleRecdTypeChoice, previewVersion
- LanguageFeature.ImprovedImpliedArgumentNames, previewVersion
- LanguageFeature.DiagnosticForObjInference, previewVersion
- LanguageFeature.WarningWhenTailRecAttributeButNonTailRecUsage, previewVersion
- LanguageFeature.StaticLetInRecordsDusEmptyTypes, previewVersion
- LanguageFeature.StrictIndentation, previewVersion
- LanguageFeature.ConstraintIntersectionOnFlexibleTypes, previewVersion
LanguageFeature.UnmanagedConstraintCsharpInterop, previewVersion
- LanguageFeature.WhileBang, previewVersion
- LanguageFeature.ExtendedFixedBindings, previewVersion
- LanguageFeature.PreferStringGetPinnableReference, previewVersion
]
static let defaultLanguageVersion = LanguageVersion("default")
@@ -200,6 +204,8 @@ type LanguageVersion(versionText) =
| "6" -> languageVersion60
| "7.0"
| "7" -> languageVersion70
+ | "8.0"
+ | "8" -> languageVersion80
| _ -> 0m
let specified = getVersionFromString versionText
diff --git a/src/Compiler/xlf/FSComp.txt.cs.xlf b/src/Compiler/xlf/FSComp.txt.cs.xlf
index df678fb3840..15aad87ce3d 100644
--- a/src/Compiler/xlf/FSComp.txt.cs.xlf
+++ b/src/Compiler/xlf/FSComp.txt.cs.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Tento anonymní záznam neodpovídá přesně očekávanému tvaru. Přidejte chybějící pole {0} a odeberte nadbytečná pole {1}.
@@ -5024,7 +5024,7 @@
- Statické definice hodnot se dají použít jenom u typů s primárním konstruktorem. Zvažte přidání argumentů do definice typu, třeba type X(args) = ...
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Neplatné použití fixed. fixed se dá použít jenom v deklaraci ve tvaru use x = fixed expr, kde výraz je pole, adresa pole nebo adresa prvku pole nebo řetězce.
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- Klíč správce balíčků {0} nebyl zaregistrován v {1}. Aktuálně registrováno: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.de.xlf b/src/Compiler/xlf/FSComp.txt.de.xlf
index ae083bc3434..afd81daf908 100644
--- a/src/Compiler/xlf/FSComp.txt.de.xlf
+++ b/src/Compiler/xlf/FSComp.txt.de.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Dieser anonyme Datensatz stimmt nicht genau mit der erwarteten Form überein. Fügen Sie die fehlenden Felder ({0}) hinzu, und entfernen Sie die zusätzlichen Felder ({1}).
@@ -5024,7 +5024,7 @@
- Statische Wertdefinitionen dürfen nur in Typen mit einem primären Konstruktor verwendet werden. Ziehen Sie in Betracht, Argumente zur Typdefinition hinzuzufügen, z. B. "type X(args) = ...".
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Ungültige Verwendung von "fixed". "fixed" darf ausschließlich in einer Deklaration der Form "use x = fixed expr" verwendet werden. Dabei ist der Ausdruck ein Array, die Adresse eines Felds, die Adresse eines Arrayelements oder eine Zeichenfolge.
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- Der Paket-Manager-Schlüssel "{0}" wurde in "{1}" nicht registriert. Aktuell registriert: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.es.xlf b/src/Compiler/xlf/FSComp.txt.es.xlf
index 43932120280..e54549eeca1 100644
--- a/src/Compiler/xlf/FSComp.txt.es.xlf
+++ b/src/Compiler/xlf/FSComp.txt.es.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Este registro anónimo no coincide exactamente con la forma esperada. Agregue los campos que faltan {0} y quite los campos adicionales {1}.
@@ -5024,7 +5024,7 @@
- Las definiciones de valores estáticos se pueden usar solo en tipos con un constructor principal. Considere agregar argumentos a la definición de tipo, por ejemplo, 'type X(args) = ...'.
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Uso no válido de 'fixed'. 'fixed' debe utilizarse solo en una declaración del formulario 'use x = fixed expr' donde la expresión es una matriz, la dirección de un campo, la dirección de un elemento de matriz o una cadena'
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- La clave del administrador de paquetes "{0}" no se registró en {1}. Registrada actualmente: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.fr.xlf b/src/Compiler/xlf/FSComp.txt.fr.xlf
index f556dc0e60c..d3dfdc5c9f4 100644
--- a/src/Compiler/xlf/FSComp.txt.fr.xlf
+++ b/src/Compiler/xlf/FSComp.txt.fr.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Cet enregistrement anonyme ne correspond pas exactement à la forme attendue. Ajoutez les champs manquants {0} et supprimez les champs supplémentaires {1}.
@@ -5024,7 +5024,7 @@
- Les définitions de valeur statiques peuvent uniquement être utilisées dans les types comportant un constructeur principal. Ajoutez des arguments à la définition de type, par exemple 'type X(args) = …'.
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Utilisation non valide de 'fixed'. Utilisez uniquement 'fixed' dans une déclaration de la forme 'use x = fixed expr' où l'expression est un tableau, l'adresse d'un champ, l'adresse d'un élément de tableau ou une chaîne
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- La clé '{0}' du gestionnaire de packages n'était pas inscrite dans {1}. L'inscription a été effectuée : {2}. Pour plus d'information sur les extensions, référez-vous à : https://aka.ms/dotnetdepmanager
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.it.xlf b/src/Compiler/xlf/FSComp.txt.it.xlf
index 4c119a33d12..511c179d4b3 100644
--- a/src/Compiler/xlf/FSComp.txt.it.xlf
+++ b/src/Compiler/xlf/FSComp.txt.it.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Questo record anonimo non corrisponde esattamente alla forma prevista. Aggiungere i campi mancanti {0} e rimuovere i campi aggiuntivi {1}.
@@ -5024,7 +5024,7 @@
- Le definizioni di valore statiche possono essere utilizzate solo nei tipi con un costruttore primario. Provare ad aggiungere argomenti alla definizione di tipo, ad esempio 'type X(args) = ...'.
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Uso non valido di 'fixed'. 'fixed' può essere usato solo in una dichiarazione in formato 'use x = fixed expr', in cui l'espressione è una matrice, l'indirizzo di un campo, l'indirizzo di un elemento di matrice oppure una stringa
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- La chiave di gestione pacchetti '{0}' non è stata registrata in {1}. Attualmente registrata: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.ja.xlf b/src/Compiler/xlf/FSComp.txt.ja.xlf
index 1b8e87aba35..7d899c67732 100644
--- a/src/Compiler/xlf/FSComp.txt.ja.xlf
+++ b/src/Compiler/xlf/FSComp.txt.ja.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ この匿名レコードは、予期された形状と完全には一致していません。不足しているフィールド {0} を追加し、不要なフィールド {1} を削除してください。
@@ -5024,7 +5024,7 @@
- 静的な値の定義は、プライマリ コンストラクターを含む型でのみ使用できます。型定義に引数を追加してください ( たとえば、'type X(args) = ...')。
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- 'fixed' の使い方が正しくありません。'fixed' を使用できるのは書式 'use x = fixed expr' の宣言内だけで、この式は配列、フィールドのアドレス、配列要素のアドレス、または文字列です
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- パッケージ マネージャー キー '{0}' は {1} に登録されていませんでした。現在登録済み: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.ko.xlf b/src/Compiler/xlf/FSComp.txt.ko.xlf
index 0020567546e..4c5db266704 100644
--- a/src/Compiler/xlf/FSComp.txt.ko.xlf
+++ b/src/Compiler/xlf/FSComp.txt.ko.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ 이 익명 레코드는 필요한 도형과 정확하게 일치하지 않습니다. 누락된 필드 {0}을(를) 추가하고 추가 필드 {1}을(를) 제거하세요.
@@ -5024,7 +5024,7 @@
- 정적 값 정의는 기본 생성자가 포함된 형식에서만 사용할 수 있습니다. 'type X(args) = ...'와 같이 형식 정의에 인수를 추가해 보세요.
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- 'fixed'를 잘못 사용했습니다. 'fixed'는 식이 배열, 필드의 주소, 배열 요소 또는 문자열의 주소인 경우 'use x = fixed expr' 형식의 선언에만 사용할 수 있습니다.
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- 패키지 관리자 키 '{0}'이(가) {1}에 등록되지 않았습니다. 현재 {2}이(가) 등록되었습니다.
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.pl.xlf b/src/Compiler/xlf/FSComp.txt.pl.xlf
index 05281e00c71..9333250195f 100644
--- a/src/Compiler/xlf/FSComp.txt.pl.xlf
+++ b/src/Compiler/xlf/FSComp.txt.pl.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Ten rekord anonimowy nie jest dokładnie zgodny z oczekiwanym kształtem. Dodaj brakujące pola {0} i usuń dodatkowe pola {1}.
@@ -5024,7 +5024,7 @@
- Definicje wartości statycznych mogą być używane tylko w przypadku typów z konstruktorem podstawowym. Rozważ dodanie argumentów do definicji typu, na przykład „type X(argumenty) = ...”.
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Nieprawidłowe użycie wyrażenia „fixed”. Wyrażenia „fixed” można użyć tylko w deklaracji w postaci „use x = fixed expr”, gdzie wyrażenie jest tablicą, adresem pola, adresem elementu tablicy lub ciągiem
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- Klucz menedżera pakietów „{0}” nie został zarejestrowany w elemencie {1}. Obecnie zarejestrowane: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.pt-BR.xlf b/src/Compiler/xlf/FSComp.txt.pt-BR.xlf
index 0eba2d9314b..90d935c497d 100644
--- a/src/Compiler/xlf/FSComp.txt.pt-BR.xlf
+++ b/src/Compiler/xlf/FSComp.txt.pt-BR.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Este registro anônimo não corresponde exatamente à forma esperada. Adicione os campos ausentes {0} e remova os campos extras {1}.
@@ -5024,7 +5024,7 @@
- Definições de valores estáticos só podem ser usadas em tipos com um construtor primário. Considere adicionar argumentos à definição de tipo, por exemplo, 'type X(args) = ...'.
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Uso inválido da 'fixed'. 'fixed' somente pode ser usada em uma declaração no formato 'use x = fixed expr', em que a expressão é uma matriz, o endereço de um campo, o endereço de um elemento de matriz ou uma cadeia de caracteres
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- A chave '{0}' do gerenciador de pacotes não foi registrada em {1}. Registrada no momento: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.ru.xlf b/src/Compiler/xlf/FSComp.txt.ru.xlf
index cb097a62717..d3da6e034de 100644
--- a/src/Compiler/xlf/FSComp.txt.ru.xlf
+++ b/src/Compiler/xlf/FSComp.txt.ru.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Эта анонимная запись не соответствует ожидаемой форме. Добавьте недостающие поля {0} и удалите лишние поля {1}.
@@ -5024,7 +5024,7 @@
- Статические определения значений можно использовать только в типах с первичными конструкторами. Попробуйте добавить в определение типа аргументы, напр. "type X(args) = ...".
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Недопустимое использование выражения "fixed". Выражение "fixed" можно использовать только в объявлении формы "use x = fixed expr", где выражение является массивом, адресом поля, адресом элемента массива или строки.
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- Ключ "{0}" диспетчера пакетов не был зарегистрирован в {1}. Текущий зарегистрированный ключ: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.tr.xlf b/src/Compiler/xlf/FSComp.txt.tr.xlf
index 6f7d4c805e9..6b4b7da0c79 100644
--- a/src/Compiler/xlf/FSComp.txt.tr.xlf
+++ b/src/Compiler/xlf/FSComp.txt.tr.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ Bu anonim kayıt, beklenen şekille tam olarak eşleşmiyor. Eksik {0} alanlarını ekleyin ve ek {1} alanlarını kaldırın.
@@ -5024,7 +5024,7 @@
- Statik değer tanımları yalnızca birincil oluşturucusu olan türlerde kullanılabilir. Tür tanımına bağımsız değişkenler eklemeyi düşünün, örn. 'type X(args) = ...'.
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- Geçersiz 'fixed' kullanımı. 'fixed' yalnızca 'use x = fixed expr' biçimindeki bir bildirimde kullanılabilir. Burada ifade bir dizi, bir alanın adresi, bir dizi öğesinin adresi veya bir dizedir
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- '{0}' paket yöneticisi anahtarı {1} içinde kayıtlı değil. Şu anda kayıtlı: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.zh-Hans.xlf b/src/Compiler/xlf/FSComp.txt.zh-Hans.xlf
index 2607c85378a..cb62c820b3e 100644
--- a/src/Compiler/xlf/FSComp.txt.zh-Hans.xlf
+++ b/src/Compiler/xlf/FSComp.txt.zh-Hans.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ 此匿名记录与预期的形状不完全匹配。请添加缺少的字段 {0} 并删除额外的字段 {1}。
@@ -5024,7 +5024,7 @@
- 静态值定义只能在具有主构造函数的类型中使用。请考虑向类型定义添加参数,例如“type X(args) = ...”。
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- 无效的 "fixed" 使用。"fixed" 只能用在 "use x = fixed expr" 形式的声明中,其中表达式为数组、字段的地址、数组元素或字符串的地址
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- 未在 {1} 中注册包管理器密钥“{0}”。当前注册: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Compiler/xlf/FSComp.txt.zh-Hant.xlf b/src/Compiler/xlf/FSComp.txt.zh-Hant.xlf
index bfb346cd26f..518f294cda5 100644
--- a/src/Compiler/xlf/FSComp.txt.zh-Hant.xlf
+++ b/src/Compiler/xlf/FSComp.txt.zh-Hant.xlf
@@ -1049,7 +1049,7 @@
- This anonymous record does not exactly match the expected shape. Add the missing fields {0} and remove the extra fields {1}.
+ 此匿名記錄與預期的圖形未完全相符。請新增缺少的欄位 {0},並移除額外的欄位 {1}。
@@ -5024,7 +5024,7 @@
- 靜態值定義只能用於含有主要建構函式的類型中。請考慮在類型定義加入引數,例如 'type X(args) = ...'。
+ For F#7 and lower, static value definitions may only be used in types with a primary constructor ('type X(args) = ...'). To enable them in all other types, use language version 'preview'.
@@ -7859,7 +7859,7 @@
- 使用 'fixed' 無效。'fixed' 僅能用於格式為 'use x = fixed expr' 的宣告中,其中運算式為陣列、欄位的位址、陣列元素的位址或字串
+ Invalid use of 'fixed'. 'fixed' may only be used in a declaration of the form 'use x = fixed expr' where the expression is one of the following: an array, the address of an array element, a string, a byref, an inref, or a type implementing GetPinnableReference()
@@ -8524,7 +8524,7 @@
- 套件管理員金鑰 '{0}' 未在 {1} 中註冊。目前已註冊: {2}
+ Package manager key '{0}' was not registered in {1}. Currently registered: {2}. To learn more about extensions, visit: https://aka.ms/dotnetdepmanager
diff --git a/src/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.fsproj b/src/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.fsproj
index 1eb571198bf..f7560b70738 100644
--- a/src/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.fsproj
+++ b/src/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.fsproj
@@ -3,7 +3,7 @@
trueExe
- net7.0
+ net8.0Microsoft.FSharp.Compiler.nuspectrue.NET Core compatible version of the F# compiler fsc.exe.
diff --git a/src/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.nuspec b/src/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.nuspec
index fddbf477e89..ca36309d5da 100644
--- a/src/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.nuspec
+++ b/src/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.nuspec
@@ -4,7 +4,7 @@
$CommonMetadataElements$
en-US
-
+
@@ -26,17 +26,16 @@
this approach gives a very small deployment. Which is kind of necessary.
-->
-
-
-
-
-
-
+
+
+
+
+
+
+ target="lib\net8.0" />
-
+ target="lib\net8.0" />
@@ -46,14 +45,14 @@
-
+
+ target="lib\net8.0" />
-
+ target="lib\net8.0" />
+
+ target="lib\net8.0" />
diff --git a/src/fsc/fscProject/fsc.fsproj b/src/fsc/fscProject/fsc.fsproj
index 322cd7ff30b..64c4651a7f4 100644
--- a/src/fsc/fscProject/fsc.fsproj
+++ b/src/fsc/fscProject/fsc.fsproj
@@ -3,15 +3,15 @@
- net472;net7.0
- net7.0
+ net472;net8.0
+ net8.0x86Debug;Release;Proto;ReleaseCompressednet472
- net7.0
+ net8.0x86
diff --git a/src/fsi/fsiProject/fsi.fsproj b/src/fsi/fsiProject/fsi.fsproj
index 8d633e7b047..dd17f8bd53d 100644
--- a/src/fsi/fsiProject/fsi.fsproj
+++ b/src/fsi/fsiProject/fsi.fsproj
@@ -3,15 +3,15 @@
- net472;net7.0
- net7.0
+ net472;net8.0
+ net8.0x86Debug;Release;Proto;ReleaseCompressednet472
- net7.0
+ net8.0x86
diff --git a/tests/AheadOfTime/Trimming/SelfContained_Trimming_Test/SelfContained_Trimming_Test.fsproj b/tests/AheadOfTime/Trimming/SelfContained_Trimming_Test/SelfContained_Trimming_Test.fsproj
index 3939fec5527..7893f5d792e 100644
--- a/tests/AheadOfTime/Trimming/SelfContained_Trimming_Test/SelfContained_Trimming_Test.fsproj
+++ b/tests/AheadOfTime/Trimming/SelfContained_Trimming_Test/SelfContained_Trimming_Test.fsproj
@@ -2,7 +2,7 @@
Exe
- net472;net7.0
+ net472;net8.0previewtruetrue
@@ -17,8 +17,8 @@
- $(MSBuildThisFileDirectory)../../../../artifacts/bin/fsc/Release/net7.0/fsc.dll
- $(MSBuildThisFileDirectory)../../../../artifacts/bin/fsc/Release/net7.0/fsc.dll
+ $(MSBuildThisFileDirectory)../../../../artifacts/bin/fsc/Release/net8.0/fsc.dll
+ $(MSBuildThisFileDirectory)../../../../artifacts/bin/fsc/Release/net8.0/fsc.dllFalseTrue
diff --git a/tests/AheadOfTime/Trimming/StaticLinkedFSharpCore_Trimming_Test/StaticLinkedFSharpCore_Trimming_Test.fsproj b/tests/AheadOfTime/Trimming/StaticLinkedFSharpCore_Trimming_Test/StaticLinkedFSharpCore_Trimming_Test.fsproj
index 615e885dabb..ac2adec9ed4 100644
--- a/tests/AheadOfTime/Trimming/StaticLinkedFSharpCore_Trimming_Test/StaticLinkedFSharpCore_Trimming_Test.fsproj
+++ b/tests/AheadOfTime/Trimming/StaticLinkedFSharpCore_Trimming_Test/StaticLinkedFSharpCore_Trimming_Test.fsproj
@@ -2,7 +2,7 @@
Exe
- net472;net7.0
+ net472;net8.0previewtruetrue
@@ -19,8 +19,8 @@
- $(MSBuildThisFileDirectory)../../../../artifacts/bin/fsc/Release/net7.0/fsc.dll
- $(MSBuildThisFileDirectory)../../../../artifacts/bin/fsc/Release/net7.0/fsc.dll
+ $(MSBuildThisFileDirectory)../../../../artifacts/bin/fsc/Release/net8.0/fsc.dll
+ $(MSBuildThisFileDirectory)../../../../artifacts/bin/fsc/Release/net8.0/fsc.dllFalseTrue
diff --git a/tests/AheadOfTime/Trimming/check.ps1 b/tests/AheadOfTime/Trimming/check.ps1
index f7e7da74385..ef8f6be89e4 100644
--- a/tests/AheadOfTime/Trimming/check.ps1
+++ b/tests/AheadOfTime/Trimming/check.ps1
@@ -36,8 +36,8 @@ function CheckTrim($root, $tfm, $outputfile, $expected_len) {
}
-# Check net7.0 trimmed assemblies
-CheckTrim -root "SelfContained_Trimming_Test" -tfm "net7.0" -outputfile "FSharp.Core.dll" -expected_len 287744
+# Check net8.0 trimmed assemblies
+CheckTrim -root "SelfContained_Trimming_Test" -tfm "net8.0" -outputfile "FSharp.Core.dll" -expected_len 287744
# Check net472 trimmed assemblies -- net472 doesn't actually trim, this just checks that everything is usable when published trimmed
CheckTrim -root "SelfContained_Trimming_Test" -tfm "net472" -outputfile "FSharp.Core.dll" -expected_len -1
@@ -46,5 +46,5 @@ CheckTrim -root "SelfContained_Trimming_Test" -tfm "net472" -outputfile "FSharp.
# Check net472 trimmed / static linked assemblies
CheckTrim -root "StaticLinkedFSharpCore_Trimming_Test" -tfm "net472" -outputfile "StaticLinkedFSharpCore_Trimming_Test.exe" -expected_len -1
-# Check net7.0 trimmed assemblies
-CheckTrim -root "StaticLinkedFSharpCore_Trimming_Test" -tfm "net7.0" -outputfile "StaticLinkedFSharpCore_Trimming_Test.dll" -expected_len 8821248
+# Check net8.0 trimmed assemblies
+CheckTrim -root "StaticLinkedFSharpCore_Trimming_Test" -tfm "net8.0" -outputfile "StaticLinkedFSharpCore_Trimming_Test.dll" -expected_len 8821760
diff --git a/tests/EndToEndBuildTests/BasicProvider/BasicProvider.DesignTime/BasicProvider.DesignTime.fsproj b/tests/EndToEndBuildTests/BasicProvider/BasicProvider.DesignTime/BasicProvider.DesignTime.fsproj
index ab0d33bd429..b05e1882f6e 100644
--- a/tests/EndToEndBuildTests/BasicProvider/BasicProvider.DesignTime/BasicProvider.DesignTime.fsproj
+++ b/tests/EndToEndBuildTests/BasicProvider/BasicProvider.DesignTime/BasicProvider.DesignTime.fsproj
@@ -2,7 +2,7 @@
Library
- net7.0;net472
+ net8.0;net472typeprovidersNO_GENERATIVEIS_DESIGNTIME
diff --git a/tests/EndToEndBuildTests/BasicProvider/BasicProvider.Tests/BasicProvider.Tests.fsproj b/tests/EndToEndBuildTests/BasicProvider/BasicProvider.Tests/BasicProvider.Tests.fsproj
index c157669ba0a..5da0cbb3bfb 100644
--- a/tests/EndToEndBuildTests/BasicProvider/BasicProvider.Tests/BasicProvider.Tests.fsproj
+++ b/tests/EndToEndBuildTests/BasicProvider/BasicProvider.Tests/BasicProvider.Tests.fsproj
@@ -2,7 +2,7 @@
Library
- net7.0
+ net8.0$(TestTargetFramework)falseNO_GENERATIVE
diff --git a/tests/EndToEndBuildTests/BasicProvider/BasicProvider/BasicProvider.fsproj b/tests/EndToEndBuildTests/BasicProvider/BasicProvider/BasicProvider.fsproj
index 6dc26094835..96006f06673 100644
--- a/tests/EndToEndBuildTests/BasicProvider/BasicProvider/BasicProvider.fsproj
+++ b/tests/EndToEndBuildTests/BasicProvider/BasicProvider/BasicProvider.fsproj
@@ -2,7 +2,7 @@
Library
- net7.0;net472
+ net8.0;net472typeproviders$(FSharpCoreShippedPackageVersionValue)typeproviders
diff --git a/tests/EndToEndBuildTests/BasicProvider/TestBasicProvider.cmd b/tests/EndToEndBuildTests/BasicProvider/TestBasicProvider.cmd
index b9d1058aff0..7de66b4e7f8 100644
--- a/tests/EndToEndBuildTests/BasicProvider/TestBasicProvider.cmd
+++ b/tests/EndToEndBuildTests/BasicProvider/TestBasicProvider.cmd
@@ -42,8 +42,8 @@ echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuratio
dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net472 -p:FSharpTestCompilerVersion=net40
if ERRORLEVEL 1 echo Error: TestBasicProvider failed && goto :failure
-echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net7.0 -p:FSharpTestCompilerVersion=coreclr
- dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net7.0 -p:FSharpTestCompilerVersion=coreclr
+echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net8.0 -p:FSharpTestCompilerVersion=coreclr
+ dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net8.0 -p:FSharpTestCompilerVersion=coreclr
if ERRORLEVEL 1 echo Error: TestBasicProvider failed && goto :failure
rem
@@ -60,8 +60,8 @@ echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuratio
dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net472 -p:FSharpTestCompilerVersion=net40
if ERRORLEVEL 1 echo Error: TestBasicProvider failed && goto :failure
-echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net7.0 -p:FSharpTestCompilerVersion=coreclr
- dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net7.0 -p:FSharpTestCompilerVersion=coreclr
+echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net8.0 -p:FSharpTestCompilerVersion=coreclr
+ dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net8.0 -p:FSharpTestCompilerVersion=coreclr
if ERRORLEVEL 1 echo Error: TestBasicProvider failed && goto :failure
:success
diff --git a/tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj b/tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj
index 96853becff7..e3c796d0bdd 100644
--- a/tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj
+++ b/tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj
@@ -3,8 +3,8 @@
- net472;net7.0
- net7.0
+ net472;net8.0
+ net8.0Librarytruexunit
diff --git a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warn/warn.fs b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warn/warn.fs
index 42ba827de61..9dd6dea0e91 100644
--- a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warn/warn.fs
+++ b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warn/warn.fs
@@ -11,7 +11,7 @@ module TestCompilerWarningLevel =
[]
let ``warn_level0_fs --warn:0`` compilation =
compilation
- |> withLangVersionPreview
+ |> withLangVersion80
|> asExe
|> withOptions ["--warn:0"]
|> compileAndRun
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/AccessibilityAnnotations/PermittedLocations/PermittedLocations.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/AccessibilityAnnotations/PermittedLocations/PermittedLocations.fs
index f76cbdb9dea..0e8a66efdf0 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/AccessibilityAnnotations/PermittedLocations/PermittedLocations.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/AccessibilityAnnotations/PermittedLocations/PermittedLocations.fs
@@ -125,9 +125,9 @@ module AccessibilityAnnotations_PermittedLocations =
|> shouldFail
|> withDiagnostics [
(Error 531, Line 11, Col 13, Line 11, Col 20, "Accessibility modifiers should come immediately prior to the identifier naming a construct")
- (Warning 58, Line 12, Col 23, Line 12, Col 26, "Possible incorrect indentation: this token is offside of context started at position (11:23). Try indenting this token further or using standard formatting conventions.")
+ (Error 58, Line 12, Col 23, Line 12, Col 26, "Possible incorrect indentation: this token is offside of context started at position (11:23). Try indenting this token further or using standard formatting conventions.")
(Error 531, Line 12, Col 13, Line 12, Col 19, "Accessibility modifiers should come immediately prior to the identifier naming a construct")
- (Warning 58, Line 13, Col 23, Line 13, Col 26, "Possible incorrect indentation: this token is offside of context started at position (12:23). Try indenting this token further or using standard formatting conventions.")
+ (Error 58, Line 13, Col 23, Line 13, Col 26, "Possible incorrect indentation: this token is offside of context started at position (12:23). Try indenting this token further or using standard formatting conventions.")
(Error 531, Line 13, Col 13, Line 13, Col 21, "Accessibility modifiers should come immediately prior to the identifier naming a construct")
]
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/LetBindings/Basic/Basic.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/LetBindings/Basic/Basic.fs
index 33eff4235d1..ea00b30e1be 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/LetBindings/Basic/Basic.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/LetBindings/Basic/Basic.fs
@@ -76,7 +76,7 @@ module LetBindings_Basic =
|> verifyCompile
|> shouldFail
|> withDiagnostics [
- (Warning 58, Line 10, Col 1, Line 10, Col 5, "Possible incorrect indentation: this token is offside of context started at position (8:1). Try indenting this token further or using standard formatting conventions.")
+ (Error 58, Line 10, Col 1, Line 10, Col 5, "Possible incorrect indentation: this token is offside of context started at position (8:1). Try indenting this token further or using standard formatting conventions.")
(Error 10, Line 10, Col 6, Line 10, Col 7, "Unexpected start of structured construct in expression")
(Error 583, Line 9, Col 5, Line 9, Col 6, "Unmatched '('")
(Error 10, Line 10, Col 16, Line 10, Col 17, "Unexpected symbol ')' in implementation file")
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/StaticLet/StaticLetInUnionsAndRecords.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/StaticLet/StaticLetInUnionsAndRecords.fs
index 8f05076b144..ec7346244d2 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/StaticLet/StaticLetInUnionsAndRecords.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/StaticLet/StaticLetInUnionsAndRecords.fs
@@ -27,6 +27,7 @@ let ``Should fail in F# 7 and lower`` (implFileName:string) =
[]
[]
+[]
[]
let ``Regression in Member val - not allowed without primary constructor`` (langVersion:string) =
Fs """module Test
@@ -40,6 +41,7 @@ type Bad3 =
[]
[]
+[]
[]
let ``Regression - Type augmentation with abstract slot not allowed`` (langVersion:string) =
Fs """module Test
@@ -53,6 +55,7 @@ type System.Random with
[]
[]
+[]
[]
let ``Regression - record with abstract slot not allowed`` (langVersion:string) =
Fs """module Test
@@ -65,7 +68,7 @@ type myRecord2 = { field1: int; field2: string }
let verifyCompileAndRun compilation =
compilation
- |> withLangVersionPreview
+ |> withLangVersion80
|> asExe
|> compileAndRun
@@ -95,7 +98,7 @@ init R 2
[]
let ``Static let - lowercase DU`` compilation =
compilation
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -127,7 +130,7 @@ let ``Static let in simple union`` compilation =
[]
let ``Support in plain enums - typecheck should fail`` compilation =
compilation
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnosticMessage "Enumerations cannot have members"
@@ -274,7 +277,7 @@ Creating cached val for Uri
[]
let ``Static let record - generics - IL test`` compilation =
compilation
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> verifyIL [""" .method private specialname rtspecialname static
void .cctor() cil managed
@@ -389,7 +392,7 @@ type X =
static do Console.WriteLine("from type")
do Console.WriteLine("module after type")
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL ["""
@@ -464,7 +467,7 @@ Console.Write(MyTypes.X.GetX)
FSharp types
|> withAdditionalSourceFiles [SourceCodeFileKind.Create("program.fs", program)]
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL ["""
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/TypeAbbreviations/WarnForAutoOpenAttributeAlias.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/TypeAbbreviations/WarnForAutoOpenAttributeAlias.fs
index f15f6199d3c..b1d60d36842 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/TypeAbbreviations/WarnForAutoOpenAttributeAlias.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicGrammarElements/TypeAbbreviations/WarnForAutoOpenAttributeAlias.fs
@@ -15,7 +15,7 @@ type ByItsOwnNatureUnBottledAttribute = Microsoft.FSharp.Core.AutoOpenAttribute
module Foo =
let bar = 0
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/Constraints/Unmanaged.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/Constraints/Unmanaged.fs
index ea982858d47..085027df320 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/Constraints/Unmanaged.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/Constraints/Unmanaged.fs
@@ -358,7 +358,7 @@ let _ = Test>>()
|> withDiagnostics [
(Error 43, Line 1, Col 34, Line 1, Col 48, "The constraints 'unmanaged' and 'not struct' are inconsistent")]
- []
+ []
let ``Multi constraint IL test together with struct and interface constraints`` () =
Fsx "[] type Test<'T when 'T: unmanaged and 'T: struct and 'T:>System.IComparable> = struct end"
|> withLangVersionPreview
@@ -379,14 +379,12 @@ let _ = Test>>()
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.NoComparisonAttribute::.ctor() = ( 01 00 00 00 )
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 03 00 00 00 00 00 )
.param type T
- .custom instance void System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [runtime]System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
}
- } """;"""
-.class private auto ansi beforefieldinit System.Runtime.CompilerServices.IsUnmanagedAttribute
- extends [runtime]System.Attribute"""]
+ } """]
- []
+ []
let ``IsUnmanagedAttribute Attribute is emitted for function with unmanaged constraint`` () =
Fsx "let testMyFunction (x: 'TUnmanaged when 'TUnmanaged : unmanaged) = struct(x,1)"
|> withLangVersionPreview
@@ -397,7 +395,7 @@ let _ = Test>>()
testMyFunction(!!TUnmanaged x) cil managed
{
.param type TUnmanaged
- .custom instance void System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [runtime]System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
.maxstack 8
IL_0000: ldarg.0
@@ -420,7 +418,7 @@ let _ = Test>>()
open CsLib
let y = new CsharpStruct(struct(1,"this is string"))
""" |> withReferences [csLib]
- |> withLangVersionPreview
+ |> withLangVersion80
app
|> compile
@@ -451,13 +449,13 @@ printf "%s" (CsharpStruct.Hi())
""" |> withReferences [csLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> asExe
|> compile
|> run
|> verifyOutput "MultiCaseUnion"
- []
+ []
let ``FSharp generates modreq for CSharp to consume in preview`` () =
Fsx "let testMyFunction (x: 'TUnmanaged when 'TUnmanaged : unmanaged) = ()"
|> withLangVersionPreview
@@ -467,7 +465,7 @@ printf "%s" (CsharpStruct.Hi())
.method public static void testMyFunction(!!TUnmanaged x) cil managed
{
.param type TUnmanaged
- .custom instance void System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [runtime]System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
.maxstack 8
IL_0000: ret
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/ByrefSafetyAnalysis/ByrefSafetyAnalysis.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/ByrefSafetyAnalysis/ByrefSafetyAnalysis.fs
index 16637ac9106..edc579d2cfb 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/ByrefSafetyAnalysis/ByrefSafetyAnalysis.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/ByrefSafetyAnalysis/ByrefSafetyAnalysis.fs
@@ -490,7 +490,7 @@ The type 'ByRefKinds.InOut' does not match the type 'ByRefKinds.In'")
[]
let``TestStructRecord`` compilation =
- compilation |> withNoWarn 988 |> verifyCompileAndRun |> shouldSucceed
+ compilation |> withNoWarn 988 |> withNoWarn 3560 |> verifyCompileAndRun |> shouldSucceed
[]
let``NoTailcallToByrefsWithModReq`` compilation =
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/OffsideExceptions/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/OffsideExceptions/OffsideExceptions.fs
index bfd20903018..3dd4b360463 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/OffsideExceptions/OffsideExceptions.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/OffsideExceptions/OffsideExceptions.fs
@@ -262,7 +262,7 @@ module A
|> typecheck
|> shouldFail
|> withResult {
- Error = Warning 58
+ Error = Error 58
Range = { StartLine = 4
StartColumn = 5
EndLine = 4
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/Types/RecordTypes/RecordTypes.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/Types/RecordTypes/RecordTypes.fs
index afb010f82a8..856c34bbfa6 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/Types/RecordTypes/RecordTypes.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/Types/RecordTypes/RecordTypes.fs
@@ -11,6 +11,7 @@ module RecordTypes =
let verifyTypeCheckAsFsxAsLibrary compilation =
compilation
|> asLibrary
+ |> withOptions ["--nowarn:3560"]
|> typecheck
|> shouldSucceed
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/Types/UnionTypes/UnionTypes.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/Types/UnionTypes/UnionTypes.fs
index bc5f4e9d8c8..f66c21b13c3 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/Types/UnionTypes/UnionTypes.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/Types/UnionTypes/UnionTypes.fs
@@ -595,7 +595,9 @@ module UnionTypes =
|> verifyCompile
|> shouldFail
|> withDiagnostics [
- (Warning 58, Line 9, Col 1, Line 9, Col 2, "Possible incorrect indentation: this token is offside of context started at position (8:19). Try indenting this token further or using standard formatting conventions.")
+ (Error 58, Line 9, Col 1, Line 9, Col 2, "Possible incorrect indentation: this token is offside of context started at position (8:19). Try indenting this token further or using standard formatting conventions.")
+ (Error 547, Line 8, Col 24, Line 8, Col 33, "A type definition requires one or more members or other declarations. If you intend to define an empty class, struct or interface, then use 'type ... = class end', 'interface end' or 'struct end'.")
+ (Error 10, Line 9, Col 1, Line 9, Col 2, "Unexpected symbol '|' in implementation file")
]
//SOURCE=W_UnionCaseProduction01.fsx SCFLAGS="-a --test:ErrorRanges" # W_UnionCaseProduction01.fsx
@@ -607,4 +609,3 @@ module UnionTypes =
|> withDiagnostics [
(Warning 42, Line 11, Col 12, Line 11, Col 24, "This construct is deprecated: it is only for use in the F# library")
]
-
diff --git a/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/ObjInference.fs b/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/ObjInference.fs
index 358e10a2fa4..32950d8ba4c 100644
--- a/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/ObjInference.fs
+++ b/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/ObjInference.fs
@@ -37,7 +37,7 @@ let x = deserialize "" |> f""", 3, 9, 3, 28
FSharp code
|> withErrorRanges
|> withWarnOn 3559
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Information 3559, Line line1, Col col1, Line line2, Col col2, message)
@@ -76,7 +76,7 @@ let f () = x = x |> ignore""" // measure is inferred as 1, but that's not covere
let ``Warning does not fire unless required``(code: string) =
FSharp code
|> withWarnOn 3559
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -93,7 +93,7 @@ let f () = x = x |> ignore""" // measure is inferred as 1, but that's not covere
sprintf "%s |> ignore" expr
|> FSharp
|> withWarnOn 3559
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -103,7 +103,7 @@ let f () = x = x |> ignore""" // measure is inferred as 1, but that's not covere
sprintf "<@ %s @> |> ignore" expr
|> FSharp
|> withWarnOn 3559
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -113,7 +113,7 @@ let f () = x = x |> ignore""" // measure is inferred as 1, but that's not covere
sprintf "<@ %s @> |> ignore" expr
|> FSharp
|> withWarnOn 3559
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Information 3559, Line line1, Col (col1 + 3), Line line2, Col (col2 + 3), message)
@@ -124,7 +124,7 @@ let f () = x = x |> ignore""" // measure is inferred as 1, but that's not covere
sprintf "<@ %s @> |> ignore" expr
|> FSharp
|> withWarnOn 3559
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -133,7 +133,7 @@ let f () = x = x |> ignore""" // measure is inferred as 1, but that's not covere
let ``Warning is off by default``(expr: string, _: int, _: int, _: int, _: int) =
expr
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> withOptions ["--warnaserror"]
|> typecheck
|> shouldSucceed
diff --git a/tests/FSharp.Compiler.ComponentTests/Diagnostics/Records.fs b/tests/FSharp.Compiler.ComponentTests/Diagnostics/Records.fs
index 298b220c714..70dcd710e34 100644
--- a/tests/FSharp.Compiler.ComponentTests/Diagnostics/Records.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Diagnostics/Records.fs
@@ -16,7 +16,7 @@ type R = { F1: int; F2: string }
let updateOk r = { r with F1 = 1 }
let updateWarn r = { r with F1 = 1; F2 = "" }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -45,7 +45,7 @@ type R = { F1: int; F2: string }
let updateWarn r = { r with F1 = 1; F2 = "" }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withOptions ["--nowarn:3560"]
|> typecheck
|> shouldSucceed
@@ -85,7 +85,7 @@ let t2 (x: RecTy) (a: AnotherNestedRecTy) = { x with D.C.c = { a with A = 3 } }
// vvvvvvvvvvvvvvvvvvvvvvv
let t3 (x: RecTy) (a: AnotherNestedRecTy) = { x with D.C.c = { a with A = 3; B = 4 } }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/ArgumentNames.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/ArgumentNames.fs
index 5387e979ea4..8b0aa7efb2c 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/ArgumentNames.fs
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/ArgumentNames.fs
@@ -19,7 +19,7 @@ type M (name: string, count: int) =
let test1 = M
let test2 = M.Open
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL ["""
@@ -56,7 +56,7 @@ type M =
let test1 = M.Write
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL ["""
@@ -91,7 +91,7 @@ type Ext =
let test1 = (3).Print
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL ["""
@@ -120,7 +120,7 @@ type DU =
let test1 = X
let test2 = Case1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL ["""
@@ -160,7 +160,7 @@ let add num1 num2 = printfn "%d" (num1 + num2)
let test1 = System.Action<_, _>(add)
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL ["""
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Enums.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Enums.fs
index ae42c56fb21..c3122581db0 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Enums.fs
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Enums.fs
@@ -20,7 +20,7 @@ type Flags =
| B = (one <<< 1)
| C = (one <<< (one * 2))
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL [
@@ -38,7 +38,7 @@ type E =
| A = (1L <<< 0)
| B = (1 <<< 1)
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResult {
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/FixedBindings/FixedBindings.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/FixedBindings/FixedBindings.fs
index 66fc5be8dc4..93ef808ce36 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/FixedBindings/FixedBindings.fs
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/FixedBindings/FixedBindings.fs
@@ -418,7 +418,7 @@ module ExtendedFixedBindings =
.method public static !!a pinIt(valuetype [runtime]System.ReadOnlySpan`1 thing) cil managed
{
.param type a
- .custom instance void System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [runtime]System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
.maxstack 5
.locals init (native int V_0,
@@ -525,7 +525,7 @@ module ExtendedFixedBindings =
.method public static !!a pinIt(valuetype FixedBindings/ArrayElementRef`1 thing) cil managed
{
.param type a
- .custom instance void System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [runtime]System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
.maxstack 5
.locals init (native int V_0,
@@ -639,7 +639,7 @@ module ExtendedFixedBindings =
.method public static !!a pinIt(class FixedBindings/RefField`1 thing) cil managed
{
.param type a
- .custom instance void System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [runtime]System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
.maxstack 5
.locals init (native int V_0,
@@ -677,7 +677,7 @@ module ExtendedFixedBindings =
.method public static !!T pinIt(class FixedBindings/RefField`1 thing) cil managed
{
.param type T
- .custom instance void System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [runtime]System.Runtime.CompilerServices.IsUnmanagedAttribute::.ctor() = ( 01 00 00 00 )
.maxstack 5
.locals init (native int V_0,
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Literals.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Literals.fs
index 77a3e8786f9..9ac49148a78 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Literals.fs
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Literals.fs
@@ -44,7 +44,7 @@ let [] bitwise = 1us &&& (3us ||| 4us)
let [] bitwise2 = 1y ^^^ (3y + ~~~4y)
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL [
@@ -73,7 +73,7 @@ let [] secondsInDayPlusThree = 3.1f + (60f * 60f * 24f)
let [] chars = 'a' + 'b' - 'a'
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL [
@@ -106,7 +106,7 @@ let [] complex2 = false || (flag && flippedFlag)
let [] complex3 = true || (flag && not flippedFlag)
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL [
@@ -130,7 +130,7 @@ type E =
let [] x = enum (1 + 1)
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL [
@@ -149,7 +149,7 @@ open System.Runtime.CompilerServices
let x () =
3
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
|> verifyIL [
@@ -163,7 +163,7 @@ module LiteralArithmetic
let [] x = System.Int32.MaxValue + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResult {
@@ -182,7 +182,7 @@ module LiteralArithmetic
let [] x = 1m + 1m
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -213,7 +213,7 @@ module LiteralArithmetic
let [] x = 1 + System.DateTime.Now.Hour
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -260,8 +260,8 @@ type E =
|> typecheck
|> shouldFail
|> withDiagnostics [
- (Error 3350, Line 6, Col 19, Line 6, Col 30, "Feature 'Arithmetic and logical operations in literals, enum definitions and attributes' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.")
- (Error 3350, Line 9, Col 23, Line 9, Col 37, "Feature 'Arithmetic and logical operations in literals, enum definitions and attributes' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.")
- (Error 3350, Line 12, Col 12, Line 12, Col 19, "Feature 'Arithmetic and logical operations in literals, enum definitions and attributes' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.")
- (Error 3350, Line 14, Col 12, Line 14, Col 21, "Feature 'Arithmetic and logical operations in literals, enum definitions and attributes' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.")
+ (Error 3350, Line 6, Col 19, Line 6, Col 30, "Feature 'Arithmetic and logical operations in literals, enum definitions and attributes' is not available in F# 7.0. Please use language version 8.0 or greater.")
+ (Error 3350, Line 9, Col 23, Line 9, Col 37, "Feature 'Arithmetic and logical operations in literals, enum definitions and attributes' is not available in F# 7.0. Please use language version 8.0 or greater.")
+ (Error 3350, Line 12, Col 12, Line 12, Col 19, "Feature 'Arithmetic and logical operations in literals, enum definitions and attributes' is not available in F# 7.0. Please use language version 8.0 or greater.")
+ (Error 3350, Line 14, Col 12, Line 14, Col 21, "Feature 'Arithmetic and logical operations in literals, enum definitions and attributes' is not available in F# 7.0. Please use language version 8.0 or greater.")
]
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/MethodImplAttribute/MethodImplAttribute.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/MethodImplAttribute/MethodImplAttribute.fs
index 7acefc4ba54..a13fee6baaf 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/MethodImplAttribute/MethodImplAttribute.fs
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/MethodImplAttribute/MethodImplAttribute.fs
@@ -37,7 +37,7 @@ module MethodImplAttribute =
[]
let ``NoInlining_fs with inline keyword => should warn in preview version`` compilation =
compilation
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> withSingleDiagnostic (Warning 3151, Line 2, Col 1, Line 3, Col 38, "This member, function or value declaration may not be declared 'inline'")
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Misc/NoBoxingOnDispose01.fs.il.netcore.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Misc/NoBoxingOnDispose01.fs.il.netcore.bsl
index e716fe74c72..a75cf1b5171 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Misc/NoBoxingOnDispose01.fs.il.netcore.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Misc/NoBoxingOnDispose01.fs.il.netcore.bsl
@@ -8,7 +8,7 @@
.assembly extern System.Collections
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly assembly
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.fs.il.netcore.debug.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.fs.il.netcore.debug.bsl
index 6d031370ccb..f12aee407f6 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.fs.il.netcore.debug.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.fs.il.netcore.debug.bsl
@@ -12,7 +12,7 @@
.assembly extern System.Linq
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly extern netstandard
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.fs.il.netcore.release.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.fs.il.netcore.release.bsl
index 492b0fe479e..314f6a56f78 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.fs.il.netcore.release.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.fs.il.netcore.release.bsl
@@ -12,7 +12,7 @@
.assembly extern System.Linq
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly extern netstandard
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Grouping01.fs.il.netcore.debug.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Grouping01.fs.il.netcore.debug.bsl
index 4844a7c0387..2d27fb5b024 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Grouping01.fs.il.netcore.debug.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Grouping01.fs.il.netcore.debug.bsl
@@ -8,7 +8,7 @@
.assembly extern System.Linq
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly extern Utils
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Grouping01.fs.il.netcore.release.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Grouping01.fs.il.netcore.release.bsl
index 4844a7c0387..2d27fb5b024 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Grouping01.fs.il.netcore.release.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Grouping01.fs.il.netcore.release.bsl
@@ -8,7 +8,7 @@
.assembly extern System.Linq
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly extern Utils
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Joins01.fs.il.netcore.debug.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Joins01.fs.il.netcore.debug.bsl
index 96552966171..f711da357ed 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Joins01.fs.il.netcore.debug.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Joins01.fs.il.netcore.debug.bsl
@@ -12,7 +12,7 @@
.assembly extern System.Linq
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly assembly
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Joins01.fs.il.netcore.release.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Joins01.fs.il.netcore.release.bsl
index 96552966171..f711da357ed 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Joins01.fs.il.netcore.release.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Joins01.fs.il.netcore.release.bsl
@@ -12,7 +12,7 @@
.assembly extern System.Linq
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly assembly
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Quantifiers01.fs.il.netcore.debug.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Quantifiers01.fs.il.netcore.debug.bsl
index 696e899e467..7da83cc1d73 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Quantifiers01.fs.il.netcore.debug.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Quantifiers01.fs.il.netcore.debug.bsl
@@ -12,7 +12,7 @@
.assembly extern System.Linq
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly assembly
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Quantifiers01.fs.il.netcore.release.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Quantifiers01.fs.il.netcore.release.bsl
index 696e899e467..7da83cc1d73 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Quantifiers01.fs.il.netcore.release.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/QueryExpressionStepping/Linq101Quantifiers01.fs.il.netcore.release.bsl
@@ -12,7 +12,7 @@
.assembly extern System.Linq
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly assembly
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/TestFunctions/TestFunctions.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/TestFunctions/TestFunctions.fs
index 7e80b1e622b..4b976530e9e 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/TestFunctions/TestFunctions.fs
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/TestFunctions/TestFunctions.fs
@@ -252,6 +252,7 @@ module TestFunctions =
[]
let ``TestFunction24_fs`` compilation =
compilation
+ |> withLangVersion70
|> verifyCompilation
// Verify IL 13043
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Tuples/OptionalArg01.fs.il.netcore.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Tuples/OptionalArg01.fs.il.netcore.bsl
index 6e01e45aa2b..3a392760e0c 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Tuples/OptionalArg01.fs.il.netcore.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Tuples/OptionalArg01.fs.il.netcore.bsl
@@ -8,7 +8,7 @@
.assembly extern System.Collections
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly assembly
{
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Tuples/TupleElimination.fs.il.netcore.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Tuples/TupleElimination.fs.il.netcore.bsl
index fe22081556b..e78d74b07c4 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Tuples/TupleElimination.fs.il.netcore.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Tuples/TupleElimination.fs.il.netcore.bsl
@@ -8,7 +8,7 @@
.assembly extern System.Collections
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A )
- .ver 7:0:0:0
+ .ver 8:0:0:0
}
.assembly assembly
{
diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ClassesTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ClassesTests.fs
index a1dbbe9f135..a43e7eb2491 100644
--- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ClassesTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ClassesTests.fs
@@ -147,7 +147,7 @@ type C() =
override this.M4() = ()
member this.M5() = ()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -245,7 +245,7 @@ type B() =
member this.M5() = ()
""" |> withReferences [CSLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -274,7 +274,7 @@ type B() =
member this.M4() = ()
""" |> withReferences [CSLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -346,7 +346,7 @@ type C() =
member this.M5() = ()
""" |> withReferences [CSLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -424,7 +424,7 @@ type C() =
member this.M5() = ()
""" |> withReferences [CSLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -498,7 +498,7 @@ type C() =
member this.M5() = ()
""" |> withReferences [CSLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -568,7 +568,7 @@ type C() =
override _.M1 (i: int) = ()
""" |> withReferences [CSLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -595,7 +595,7 @@ type C() =
override _.M1 (i: string) = ()
""" |> withReferences [CSLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -623,7 +623,7 @@ type Over () =
app
|> withReferences [CSLib]
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -651,7 +651,7 @@ type PD() =
override this.M(x: int) = ()
"""
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withSingleDiagnostic (Error 361, Line 19, Col 19, Line 19, Col 20, "The override 'M: int -> unit' implements more than one abstract slot, e.g. 'abstract PB.M: 'a -> unit' and 'abstract PA.M: int -> unit'")
@@ -684,6 +684,6 @@ type X =
override this.M(a, b, c, d) = ()
""" |> withReferences [CSLib]
app
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
\ No newline at end of file
diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/NameResolutionTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/NameResolutionTests.fs
index 3b41ae6b6eb..d40e5e8d43c 100644
--- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/NameResolutionTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/NameResolutionTests.fs
@@ -72,7 +72,7 @@ module Lib =
[]
let MultipleRecdTypeChoiceWarningWith1AlternativeLangPreview () =
FSharp multipleRecdTypeChoiceWarningWith1AlternativeSource
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -129,7 +129,7 @@ module Lib =
[]
let MultipleRecdTypeChoiceWarningWith2AlternativeLangPreview () =
FSharp multipleRecdTypeChoiceWarningWith2AlternativeSource
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -186,7 +186,7 @@ module Lib =
[]
let MultipleRecdTypeChoiceWarningNotRaisedWithCorrectOpenStmtsOrderingLangPreview () =
FSharp multipleRecdTypeChoiceWarningNotRaisedWithCorrectOpenStmtsOrderingSource
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -235,7 +235,7 @@ module Lib =
[]
let MultipleRecdTypeChoiceWarningNotRaisedWithoutOverlapsLangPreview () =
FSharp multipleRecdTypeChoiceWarningNotRaisedWithoutOverlapsSource
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -284,7 +284,7 @@ module Lib =
[]
let MultipleRecdTypeChoiceWarningNotRaisedWithTypeAnnotationsLangPreview () =
FSharp multipleRecdTypeChoiceWarningNotRaisedWithTypeAnnotationsSource
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TailCallAttribute.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TailCallAttribute.fs
index a1e32599137..3365b3e1265 100644
--- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TailCallAttribute.fs
+++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TailCallAttribute.fs
@@ -21,7 +21,7 @@ namespace N
else (fact (n - 1) (mul n acc)) + 23
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -50,7 +50,7 @@ namespace N
| _ -> (fact (n - 1) (mul n acc)) + 23
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -81,7 +81,7 @@ namespace N
r + 23
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -115,7 +115,7 @@ namespace N
r |> ignore
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -150,7 +150,7 @@ namespace N
bar (x - 1) // OK: tail-recursive call.
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -179,7 +179,7 @@ namespace N
member this.InnerCMeth x = this.InnerCMeth x + 23
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -216,7 +216,7 @@ namespace N
c.M1()
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -239,7 +239,7 @@ namespace N
this.M1() // ok
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -262,7 +262,7 @@ namespace N
this.M1() + 2 // should warn
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -310,7 +310,7 @@ namespace N
fact 100000 1 |> ignore
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -330,7 +330,7 @@ namespace N
}
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -357,7 +357,7 @@ namespace N
}
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -387,7 +387,7 @@ namespace N
let a: seq = f 10
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -408,7 +408,7 @@ namespace N
let a: Async = f 10
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -426,7 +426,7 @@ namespace N
}
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -463,7 +463,7 @@ namespace N
M.M2.m2func()
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -483,7 +483,7 @@ namespace N
let m2func() = 2 + M1.m1func()
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -515,7 +515,7 @@ namespace N
let run() = let mutable x = 0 in foo(&x)
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -567,7 +567,7 @@ namespace N
}
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -626,7 +626,7 @@ namespace N
CheckDefnInModule cenv env mspec
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -680,7 +680,7 @@ namespace N
else 28
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -720,7 +720,7 @@ namespace N
foldBackOpt f m a
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -754,7 +754,7 @@ namespace N
loop xs
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -775,7 +775,7 @@ namespace N
head :: tail
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -802,7 +802,7 @@ namespace N
| x :: xs -> (x + 1) :: addOne xs
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -829,7 +829,7 @@ namespace N
| x :: xs -> addOne xs ((x + 1) :: acc)
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -851,7 +851,7 @@ namespace N
| Node (l, r) -> System.Math.Max(findMax l, findMax r)
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withResults [
@@ -908,7 +908,7 @@ namespace N
)
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -935,7 +935,7 @@ namespace N
|> finalContinuation)
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -967,7 +967,7 @@ namespace N
| _ -> failwith "Nodes with lists longer than 2 are not supported"
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -1004,7 +1004,7 @@ namespace N
Continuation.sequence continuations finalContinuation
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -1042,6 +1042,6 @@ module M =
}
"""
|> FSharp
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnionCasePatternMatchingErrors.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnionCasePatternMatchingErrors.fs
index 9c259417acb..df94ca89e0e 100644
--- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnionCasePatternMatchingErrors.fs
+++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnionCasePatternMatchingErrors.fs
@@ -83,7 +83,7 @@ let x: X = X
let myVal =
match x with
| X _ -> ()"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Warning 3548, Line 9, Col 7, Line 9, Col 10, "Pattern discard is not allowed for union case that takes no data.")
@@ -129,7 +129,7 @@ let x: X = X
let myVal =
function
| X _ -> ()"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Warning 3548, Line 9, Col 7, Line 9, Col 10, "Pattern discard is not allowed for union case that takes no data.")
@@ -150,7 +150,7 @@ let myVal =
| A _ -> 15
| B (x, _, _) -> 16
| C _ -> 17"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Warning 3548, Line 12, Col 7, Line 12, Col 10, "Pattern discard is not allowed for union case that takes no data.")
@@ -171,7 +171,7 @@ let myVal =
| A _ -> 15
| B (x, _, _) -> 16
| C _ -> 17"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Warning 3548, Line 12, Col 7, Line 12, Col 10, "Pattern discard is not allowed for union case that takes no data.")
@@ -212,7 +212,7 @@ let myVal =
| A _
| B _
| C _ -> 17"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Warning 3548, Line 12, Col 7, Line 12, Col 10, "Pattern discard is not allowed for union case that takes no data.")
@@ -237,7 +237,7 @@ let myVal =
| A _, D -> 15
| B (x, _, _), D _ -> 16
| C _, _ -> 17"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -289,7 +289,7 @@ let myVal =
| A _, D -> 15
| B (x, _, _), D _ -> 16
| C _, _ -> 17"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -353,7 +353,7 @@ let ``Pattern named not allowed union case does not take any arguments with Lang
let ``Pattern named not allowed union case does not take any arguments with Lang preview`` compilation =
compilation
|> asFs
- |> withLangVersionPreview
+ |> withLangVersion80
|> withOptions ["--nowarn:25"]
|> typecheck
|> shouldFail
diff --git a/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj b/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj
index c44ce76ff6b..d1f59c5750e 100644
--- a/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj
+++ b/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj
@@ -3,8 +3,8 @@
- net472;net7.0
- net7.0
+ net472;net8.0
+ net8.0Libraryfalsetrue
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/ConstraintIntersectionTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/ConstraintIntersectionTests.fs
index 0e0fee22505..63cc6e18dfa 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/ConstraintIntersectionTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/ConstraintIntersectionTests.fs
@@ -47,7 +47,7 @@ let z (f: #I & #IDisposable & #Task & #seq, name: string) =
f.Result |> ignore
f.Dispose ()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -67,7 +67,7 @@ type C<'t & #seq & #IDisposable, 'y & #seq<'t>> =
for x in xs do
printfn "%d" x
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -78,7 +78,7 @@ type C<'t & #seq & System.IDisposable, 'y & #seq<'t>> = class end
let y (f: #seq & System.IDisposable) = ()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/CopyAndUpdateTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/CopyAndUpdateTests.fs
index 160e5a821dd..fbbf7f84be6 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/CopyAndUpdateTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/CopyAndUpdateTests.fs
@@ -13,7 +13,7 @@ type RecTy = { D: NestdRecTy; E: string option }
let t2 x = { x with D.B = "a"; D.B = "b" }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -67,7 +67,7 @@ let t2 x = { x with D.B = "a" }
|> typecheck
|> shouldFail
|> withDiagnostics [
- (Error 3350, Line 6, Col 21, Line 6, Col 24, "Feature 'Nested record field copy-and-update' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.")
+ (Error 3350, Line 6, Col 21, Line 6, Col 24, "Feature 'Nested record field copy-and-update' is not available in F# 7.0. Please use language version 8.0 or greater.")
]
[]
@@ -83,7 +83,7 @@ type RecTy = { D: NestdRecTy; E: string option }
let t2 x = { x with D.B.A = 1; D.C = "ads" }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withNoDebug
|> withOptimize
|> compile
@@ -140,7 +140,7 @@ if actual1 <> expected1 then
if actual2 <> expected2 then
failwith "actual2 does not equal expected2"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
@@ -161,7 +161,7 @@ let expected = { ``A.B`` = "barAB"; A = { B = "barB" }; C = 42 }
if actual <> expected then
failwith "actual does not equal expected"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
@@ -190,7 +190,7 @@ if actual1 <> expected1 then
if actual2 <> expected2 then
failwith "actual2 does not equal expected2"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
@@ -221,7 +221,7 @@ if actual1 <> expected1 then
if actual2 <> expected2 then
failwith "actual2 does not equal expected2"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
@@ -244,7 +244,7 @@ if actual1 <> expected1 then
if actual2 <> expected2 then
failwith "actual2 does not equal expected2"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
@@ -281,7 +281,7 @@ let c3 = { U.G.U = Unchecked.defaultof<_>; I = 3 }
let c4 = { U.U = Unchecked.defaultof<_>; I = 3 }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -302,7 +302,7 @@ let expected = { T = "a"; I = -1; U = {| a = { T = "a"; I = 2; U = {| a = { T =
if actual <> expected then
failwith "actual does not equal expected"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
@@ -323,7 +323,7 @@ let actual1 = { t1 with D.B = 1 }
let actual2 = { t1 with D.C.A = 3; E = Some 1.0 }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withResults [
@@ -367,7 +367,7 @@ let expected = {| R = { D = 2; E = None }; S = "May I be a string now?"; T = 4 |
if actual <> expected then
failwith "actual does not equal expected"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
@@ -380,7 +380,7 @@ type RecTy = { D: int; E: {| A: int |} }
let f x = { x with E.A = "May I be a string now?" }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withResult {
@@ -412,7 +412,7 @@ let t5 (x: {| a: int; b: NestdRecTy |}) = {| x with b.C = "a" |}
let t6 (x: {| a: int; b: NestdRecTy |}) = {| x with b.G.b = "a" |}
let t7 (x: {| a: int; b: NestdRecTy |}) = {| x with c.D = "a" |}
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/DotLambdaTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/DotLambdaTests.fs
index f038fc67f10..578744ad479 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/DotLambdaTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/DotLambdaTests.fs
@@ -14,7 +14,7 @@ let ``Underscore Dot ToString`` () =
Fsx """
let x = "a" |> _.ToString()
printfn "%s" x"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -22,7 +22,7 @@ printfn "%s" x"""
let ``Underscore Dot ToString With Space Before Paranthesis - NonAtomic`` () =
Fsx """
let x = "a" |> _.ToString () """
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -36,7 +36,7 @@ let ``Underscore Dot Curried Function With Arguments - NonAtomic`` () =
type MyRecord = {MyRecordField:string}
with member x.DoStuff a b c = $"%s{x.MyRecordField} %i{a} %i{b} %i{c}"
let myFunction (x:MyRecord) = x |> _.DoStuff 1 2 3"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -49,7 +49,7 @@ let ``Underscore Dot Length on string`` () =
let x = "a" |> _.Length
printfn "%i" x
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -60,7 +60,7 @@ let a : (string array -> _) = _.Length
let b = _.ToString()
let c = _.ToString().Length
//let c = _.ToString()[0] """
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -72,14 +72,14 @@ let getnumberOutOfDU x =
match x with
| A -> 42
| _ -> 43"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
[]
let ``DotLambda does NOT generalize automatically to a member based SRTP`` () =
Fsx "let inline myFunc x = x |> _.WhatANiceProperty"
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [(Error 72, Line 1, Col 28, Line 1, Col 47, "Lookup on object of indeterminate type based on information prior to this program point. A type annotation may be needed prior to this program point to constrain the type of the object. This may allow the lookup to be resolved.")]
@@ -87,14 +87,14 @@ let ``DotLambda does NOT generalize automatically to a member based SRTP`` () =
[]
let ``DotLambda does allow member based SRTP if labelled explicitely`` () =
Fsx "let inline myFunc<'a when 'a:(member WhatANiceProperty: int)> (x: 'a) = x |> _.WhatANiceProperty "
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
[]
let ``ToString with preview version`` () =
Fsx "let myFunc = _.ToString()"
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -104,7 +104,7 @@ let ``Regression in neg typecheck hole as left arg`` () =
let a = ( upcast _ ) : obj
let b = ( _ :> _ ) : obj
let c = ( _ :> obj) """
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -120,7 +120,7 @@ let ``ToString with F# 7`` () =
|> withLangVersion70
|> typecheck
|> shouldFail
- |> withSingleDiagnostic (Error 3350, Line 1, Col 16, Line 1, Col 18, "Feature 'underscore dot shorthand for accessor only function' is not available in F# 7.0. Please use language version 'PREVIEW' or greater." )
+ |> withSingleDiagnostic (Error 3350, Line 1, Col 16, Line 1, Col 18, "Feature 'underscore dot shorthand for accessor only function' is not available in F# 7.0. Please use language version 8.0 or greater." )
[]
let ``Simple anonymous unary function shorthands compile`` () =
@@ -135,7 +135,7 @@ let a5 : {| Foo : int -> {| X : string |} |} -> string = _.Foo(5).X
open System
let a6 = [1] |> List.map _.ToString()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -145,7 +145,7 @@ let ``Nested anonymous unary function shorthands fails because of ambigous disca
module One
let a : string = {| Inner = (fun x -> x.ToString()) |} |> _.Inner([5] |> _.[0])
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Warning 3570, Line 3, Col 75, Line 3, Col 76, "The meaning of _ is ambiguous here. It cannot be used for a discarded variable and a function shorthand in the same scope.")
@@ -158,7 +158,7 @@ let a : string -> string = (fun _ -> 5 |> _.ToString())
let b : int -> int -> string = function |5 -> (fun _ -> "Five") |_ -> _.ToString()
let c : string = let _ = "test" in "asd" |> _.ToString()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withSingleDiagnostic (Warning 3570, Line 3, Col 43, Line 3, Col 44, "The meaning of _ is ambiguous here. It cannot be used for a discarded variable and a function shorthand in the same scope.")
\ No newline at end of file
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/ExtensionMethodTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/ExtensionMethodTests.fs
index edae8eed826..817b33a43d6 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/ExtensionMethodTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/ExtensionMethodTests.fs
@@ -19,7 +19,7 @@ type Foo =
let f (b:int) = b.PlusOne()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -35,7 +35,7 @@ type Foo =
let f (b:int) = b.PlusOne()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -73,7 +73,7 @@ and Bar =
let f (b:int) = b.PlusOne()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -90,7 +90,7 @@ type Foo =
[]
static member PlusOne (a:int) : int = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -172,7 +172,7 @@ and Bar =
[]
static member PlusOne (a:int) : int = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -210,7 +210,7 @@ module Foo =
[]
let PlusOne (a:int) : int = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -247,7 +247,7 @@ module Foo =
[]
let PlusOne (a:int) : int = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -281,7 +281,7 @@ namespace Consumer
[]
let PlusOne (a:int) = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -314,7 +314,7 @@ namespace Consumer
[]
let PlusOne (a:int) = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -348,7 +348,7 @@ namespace Consumer
[]
let PlusOne (a:int) = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -381,7 +381,7 @@ namespace Consumer
[]
let PlusOne (a:int) = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -416,7 +416,7 @@ type Bar =
[]
static member PlusOne (a:int) = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -449,7 +449,7 @@ type Bar =
[]
static member PlusOne (a:int) = a + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
@@ -499,7 +499,7 @@ type Bar =
[]
static member PlusOne: a: int -> int
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withAdditionalSourceFile implementation
|> withName "FSLib"
@@ -550,7 +550,7 @@ type Bar =
[]
static member PlusOne: a: int -> int
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withAdditionalSourceFile implementation
|> withName "FSLib"
@@ -586,7 +586,7 @@ type Bar =
[]
let MinusOne (a:int) = a - 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withName "FSLib"
let csharp =
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/FixedBindings/FixedBindings.fs b/tests/FSharp.Compiler.ComponentTests/Language/FixedBindings/FixedBindings.fs
index 86fb0c6c641..a99df0176e9 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/FixedBindings/FixedBindings.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/FixedBindings/FixedBindings.fs
@@ -223,7 +223,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 5, Col 9, Line 5, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 5, Col 9, Line 5, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 5, Col 9, Line 5, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 6, Col 5, Line 6, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -237,7 +237,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 5, Col 9, Line 5, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 5, Col 9, Line 5, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 5, Col 9, Line 5, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 6, Col 5, Line 6, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -251,7 +251,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 5, Col 9, Line 5, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 5, Col 9, Line 5, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 5, Col 9, Line 5, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 6, Col 5, Line 6, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -267,7 +267,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 8, Col 13, Line 8, Col 16, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 8, Col 13, Line 8, Col 16, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 8, Col 13, Line 8, Col 16, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 9, Col 9, Line 9, Col 22, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -281,7 +281,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 6, Col 9, Line 6, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 6, Col 9, Line 6, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 6, Col 9, Line 6, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 7, Col 5, Line 7, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -296,7 +296,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 6, Col 9, Line 6, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 6, Col 9, Line 6, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 6, Col 9, Line 6, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 7, Col 5, Line 7, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
#endif
@@ -324,7 +324,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 9, Col 9, Line 9, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 9, Col 9, Line 9, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 9, Col 9, Line 9, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 10, Col 5, Line 10, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -338,7 +338,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 9, Col 9, Line 9, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 9, Col 9, Line 9, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 9, Col 9, Line 9, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 10, Col 5, Line 10, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -352,7 +352,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 13, Col 9, Line 13, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 13, Col 9, Line 13, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 13, Col 9, Line 13, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 14, Col 5, Line 14, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -392,7 +392,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 11, Col 9, Line 11, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 11, Col 9, Line 11, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 11, Col 9, Line 11, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 12, Col 5, Line 12, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
@@ -431,7 +431,7 @@ The type 'char' does not match the type 'byte'""")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 9, Col 9, Line 9, Col 31, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 9, Col 9, Line 9, Col 31, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 9, Col 9, Line 9, Col 31, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Error 1, Line 9, Col 9, Line 9, Col 31, "Type mismatch. Expecting a
'nativeptr'
but given a
@@ -448,7 +448,7 @@ The type 'int' does not match the type 'char'")
|> shouldFail
|> withDiagnostics [
(Warning 9, Line 13, Col 9, Line 13, Col 12, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
- (Error 3350, Line 13, Col 9, Line 13, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.""")
+ (Error 3350, Line 13, Col 9, Line 13, Col 12, """Feature 'extended fixed bindings for byref and GetPinnableReference' is not available in F# 7.0. Please use language version 8.0 or greater.""")
(Warning 9, Line 14, Col 5, Line 14, Col 18, """Uses of this construct may result in the generation of unverifiable .NET IL code. This warning can be disabled using '--nowarn:9' or '#nowarn "9"'.""")
]
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/InterfaceTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/InterfaceTests.fs
index 09fca64fdab..4bfda202bbf 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/InterfaceTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/InterfaceTests.fs
@@ -10,7 +10,7 @@ let ``Concrete instance method is not allowed in interfaces in lang preview``()
type I =
member _.X () = 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -24,7 +24,7 @@ let ``Concrete instance property is not allowed in interfaces in lang preview``(
type I =
member _.Prop = "x"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnostics [
@@ -42,7 +42,7 @@ type I<'T> =
if I.Echo 42 <> 42 || I.Prop <> 0 || not (isNull I.Prop) then
failwith "failed"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> asExe
|> compileAndRun
|> shouldSucceed
@@ -59,7 +59,7 @@ type I<'T> =
|> typecheck
|> shouldFail
|> withDiagnostics [
- (Error 3350, Line 4, Col 19, Line 4, Col 23, "Feature 'Static members in interfaces' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.")
+ (Error 3350, Line 4, Col 19, Line 4, Col 23, "Feature 'Static members in interfaces' is not available in F# 7.0. Please use language version 8.0 or greater.")
]
[]
@@ -79,7 +79,7 @@ let o = {{ new I with member _.Blah = 4 }}
if I.Echo "yup" <> "yup" || (Imp() :> I).Blah <> 3 || o.Blah <> 4 then
failwith "failed"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> asExe
|> compileAndRun
|> shouldSucceed
\ No newline at end of file
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/InterpolatedStringsTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/InterpolatedStringsTests.fs
index 16d70c1c154..c8f2eafa937 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/InterpolatedStringsTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/InterpolatedStringsTests.fs
@@ -38,7 +38,7 @@ let c: System.IFormattable = $"string"
let a = $"{{hello}} world" : System.FormattableString
printf $"{a.Format}"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "{{hello}} world"
@@ -49,7 +49,7 @@ printf $"{a.Format}"
// printfn "%s" s
Fsx "let s = $$\"\"\"{{42 + 0}} = {41 + 1}\"\"\"\n\
printfn \"%s\" s"
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "42 = {41 + 1}"
@@ -58,7 +58,7 @@ printfn \"%s\" s"
let ``Too many consecutive opening braces in interpolated string result in an error`` () =
// $$"""{{{{42 - 0}}"""
Fsx "$$\"\"\"{{{{42 - 0}}\"\"\""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withSingleDiagnostic (Error 1248, Line 1, Col 1, Line 1, Col 10, "The interpolated triple quoted string literal does not start with enough '$' characters to allow this many consecutive opening braces as content.")
@@ -67,7 +67,7 @@ printfn \"%s\" s"
let ``Too many consecutive closing braces in interpolated string result in an error`` () =
// $$"""{{42 - 0}}}}"""
Fsx "$$\"\"\"{{42 - 0}}}}\"\"\""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withSingleDiagnostic (Error 1249, Line 1, Col 15, Line 1, Col 21, "The interpolated string contains unmatched closing braces.")
@@ -81,7 +81,7 @@ printfn \"%s\" s"
[]
let ``Double percent sign characters in triple quote interpolated strings`` () =
Fsx "printfn \"%s\" $$$\"\"\"%%\"\"\""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "%%"
@@ -89,7 +89,7 @@ printfn \"%s\" s"
[]
let ``Percent sign after interpolation hole in triple quote strings`` () =
Fsx "printfn \"%s\" $$\"\"\"{{42}}%\"\"\""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "42%"
@@ -97,7 +97,7 @@ printfn \"%s\" s"
[]
let ``Percent sign before format specifier in triple quote interpolated strings`` () =
Fsx "printfn \"%s\" $$\"\"\"%%%3d{{42}}\"\"\""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "% 42"
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/NameofTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/NameofTests.fs
index e25be0e550b..e3e54b0a957 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/NameofTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/NameofTests.fs
@@ -124,8 +124,7 @@ if not((getData b) = re2.Data) then
"""
Fsx source
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion80
|> ignoreWarnings
|> compileAndRun
|> shouldSucceed
-
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/ObsoleteAttributeCheckingTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/ObsoleteAttributeCheckingTests.fs
index 8fc365cd172..d503daa77e0 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/ObsoleteAttributeCheckingTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/ObsoleteAttributeCheckingTests.fs
@@ -347,6 +347,7 @@ type ButtonExtensions =
{ this with Text = text }
"""
|> ignoreWarnings
+ |> withOptions ["--nowarn:3560"]
|> compile
|> shouldFail
|> withDiagnostics [
@@ -590,6 +591,7 @@ let b = { Text = "Hello" }
b.text("Hello 2") |> ignore
"""
|> ignoreWarnings
+ |> withOptions ["--nowarn:3560"]
|> compile
|> shouldFail
|> withDiagnostics [
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/PrintfFormatTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/PrintfFormatTests.fs
index 90d76d2b335..8f04c09996a 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/PrintfFormatTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/PrintfFormatTests.fs
@@ -20,7 +20,7 @@ module PrintfFormatTests
let printLibraryVersion () = printfn Library.Version
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> withReferences [csLib]
|> compile
|> shouldSucceed
@@ -36,7 +36,7 @@ let Format = "%d"
if sprintf Format (Format.Length) <> "2" then
failwith "failed"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> asExe
|> compileAndRun
|> shouldSucceed
@@ -51,7 +51,7 @@ let Format = "%s"
let test = sprintf Format 42
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withResult {
@@ -90,6 +90,6 @@ let bad2 = sprintf Library.Version
|> compile
|> shouldFail
|> withDiagnostics [
- (Error 3350, Line 7, Col 20, Line 7, Col 26, "Feature 'String values marked as literals and IL constants as printf format' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.")
- (Error 3350, Line 9, Col 20, Line 9, Col 35, "Feature 'String values marked as literals and IL constants as printf format' is not available in F# 7.0. Please use language version 'PREVIEW' or greater.")
+ (Error 3350, Line 7, Col 20, Line 7, Col 26, "Feature 'String values marked as literals and IL constants as printf format' is not available in F# 7.0. Please use language version 8.0 or greater.")
+ (Error 3350, Line 9, Col 20, Line 9, Col 35, "Feature 'String values marked as literals and IL constants as printf format' is not available in F# 7.0. Please use language version 8.0 or greater.")
]
\ No newline at end of file
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/SequenceExpressionTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/SequenceExpressionTests.fs
index 5fe944be088..4ad6a5cafe2 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/SequenceExpressionTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/SequenceExpressionTests.fs
@@ -23,7 +23,7 @@ let rec f () = seq {
yield! f()
}
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> verifyIL ["
.class auto ansi serializable sealed nested assembly beforefieldinit 'f@3-1'
@@ -351,7 +351,7 @@ let typedSeq =
|_ when x = 0 -> %s{valInWith2}
}}
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -370,7 +370,7 @@ let typedSeq =
|_ when x = 0 -> %s{valInWith2}
}}
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldSucceed
@@ -389,7 +389,7 @@ let typedSeq =
|_ when x = 0 -> %s{valInWith2}
}}
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withDiagnosticMessageMatches "This expression returns a value of type 'int' but is implicitly discarded."
@@ -411,7 +411,7 @@ let typedSeq =
|_ when x = 0 -> %s{valInWith2}
}}
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withErrorCode 193
@@ -436,7 +436,7 @@ let typedSeq =
|_ when x = 0 -> %s{valInWith2}
}}
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> typecheck
|> shouldFail
|> withErrorCode 30
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/StaticClassTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/StaticClassTests.fs
index 7389bbdc697..6fc05018271 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/StaticClassTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/StaticClassTests.fs
@@ -21,7 +21,7 @@ type T = class end
[]
type T = class end
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -31,7 +31,7 @@ type T = class end
[]
type T() = class end
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -51,7 +51,7 @@ type T() = class end
[]
type T(x: int) = class end
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -75,7 +75,7 @@ type T(x: int) = class end
type T =
new () = {}
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -100,7 +100,7 @@ type T =
type T(x: int) =
new () = T(42)
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -136,7 +136,7 @@ type ListDebugView<'T>(l: 'T list) = class end
[]
type ListDebugView<'T>(l: 'T list) = class end
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -152,7 +152,7 @@ type B =
val mutable G : int
new () = { F = 3; G = 3 }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -162,8 +162,9 @@ type B =
]
[]
- []
[]
+ []
+ []
let ``Mutually recursive type definition that using custom attributes``(langVersion) =
let code = """
module Test
@@ -225,7 +226,7 @@ type T() =
member this.M() = ()
static member X = 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -252,7 +253,7 @@ type T() =
static member M() = ()
static member X = T.M()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -312,7 +313,7 @@ type C() =
let a = 1
static let X = 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -327,7 +328,7 @@ type C() =
let rec a = 1
static let X = 1
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -342,7 +343,7 @@ type C() =
static let a = 1
static let X = a
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -354,7 +355,7 @@ type C() =
static let rec a = 1
static let X = a
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -399,7 +400,7 @@ type C() =
interface MyInterface with
member this.M() = ()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -417,7 +418,7 @@ type C =
interface MyInterface with
member this.M() = ()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -460,7 +461,7 @@ type T =
abstract C : i:int -> int
abstract D : i:int -> int
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -476,7 +477,7 @@ type T() =
abstract C : i:int -> int
abstract D : i:int -> int
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -526,7 +527,7 @@ type ConsoleRetriever =
stdin.ReadLine()
"""
|> withNoWarn 3535
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -549,7 +550,7 @@ type ConsoleRetriever() =
stdin.ReadLine()
"""
|> withNoWarn 3535
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -603,7 +604,7 @@ type T =
static member Get() = T.F
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -621,7 +622,7 @@ type T() =
static member Get() = T.F
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldSucceed
@@ -661,7 +662,7 @@ type B =
val F : int
val mutable G : int
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -677,7 +678,7 @@ type B() =
val F : int
val mutable G : int
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -709,7 +710,7 @@ type T =
member _.Item1 with set i value = ()
member _.Item2 with get i = 3 and set i value = ()
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
@@ -760,7 +761,7 @@ type T =
new () = { F = 3; G = 3 }
new (x, y) = { F = x; G = y }
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compile
|> shouldFail
|> withDiagnostics [
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/WhileBangTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/WhileBangTests.fs
index 724bebf887f..f619c3be742 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/WhileBangTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/WhileBangTests.fs
@@ -27,7 +27,7 @@ module WhileBangTests =
|> Async.RunSynchronously
|> printfn "%d"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "12"
@@ -60,7 +60,7 @@ module WhileBangTests =
|> Async.RunSynchronously
|> printfn "%d"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "30"
@@ -94,7 +94,7 @@ module WhileBangTests =
|> Async.RunSynchronously
|> printfn "%d"
"""
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "1"
@@ -127,7 +127,7 @@ module WhileBangTests =
|> printfn "%d"
"""
|> ignoreWarnings
- |> withLangVersionPreview
+ |> withLangVersion80
|> compileExeAndRun
|> shouldSucceed
|> withStdOutContains "30"
\ No newline at end of file
diff --git a/tests/FSharp.Compiler.ComponentTests/Miscellaneous/FsharpSuiteMigrated.fs b/tests/FSharp.Compiler.ComponentTests/Miscellaneous/FsharpSuiteMigrated.fs
index 72af2260eb6..79f3b1fc25e 100644
--- a/tests/FSharp.Compiler.ComponentTests/Miscellaneous/FsharpSuiteMigrated.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Miscellaneous/FsharpSuiteMigrated.fs
@@ -79,6 +79,7 @@ module TestFrameworkAdapter =
| LangVersion.V50 -> "5.0",bonusArgs
| LangVersion.V60 -> "6.0",bonusArgs
| LangVersion.V70 -> "7.0",bonusArgs
+ | LangVersion.V80 -> "8.0",bonusArgs
| LangVersion.Preview -> "preview",bonusArgs
| LangVersion.Latest -> "latest", bonusArgs
| LangVersion.SupportsMl -> "5.0", "--mlcompatibility" :: bonusArgs
diff --git a/tests/FSharp.Compiler.ComponentTests/Signatures/SigGenerationRoundTripTests.fs b/tests/FSharp.Compiler.ComponentTests/Signatures/SigGenerationRoundTripTests.fs
index b0ff8e995c1..469f9fda0e7 100644
--- a/tests/FSharp.Compiler.ComponentTests/Signatures/SigGenerationRoundTripTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Signatures/SigGenerationRoundTripTests.fs
@@ -19,13 +19,13 @@ let ``Generate and compile`` implFileName =
let generatedSignature =
Fs implContents
- |> withLangVersionPreview
+ |> withLangVersion80
|> withDefines ["TESTS_AS_APP";"COMPILED"]
|> printSignatures
Fsi generatedSignature
|> withAdditionalSourceFile (FsSource implContents)
- |> withLangVersionPreview
+ |> withLangVersion80
|> withDefines ["TESTS_AS_APP";"COMPILED"]
|> ignoreWarnings
|> withOptions [ "--warnaserror:64" ]
diff --git a/tests/FSharp.Compiler.Private.Scripting.UnitTests/DependencyManagerInteractiveTests.fs b/tests/FSharp.Compiler.Private.Scripting.UnitTests/DependencyManagerInteractiveTests.fs
index e0738b4443d..2fc5366eeed 100644
--- a/tests/FSharp.Compiler.Private.Scripting.UnitTests/DependencyManagerInteractiveTests.fs
+++ b/tests/FSharp.Compiler.Private.Scripting.UnitTests/DependencyManagerInteractiveTests.fs
@@ -89,7 +89,7 @@ type DependencyManagerInteractiveTests() =
Assert.Equal(1, result.SourceFiles |> Seq.length)
Assert.Equal(2, result.Roots |> Seq.length)
- let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net7.0")
+ let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net8.0")
Assert.Equal(true, result.Success)
Assert.Equal(1, result.Resolutions |> Seq.length)
Assert.Equal(1, result.SourceFiles |> Seq.length)
@@ -111,7 +111,7 @@ type DependencyManagerInteractiveTests() =
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- let result = dp.Resolve(idm, ".fsx", [|"r", "Microsoft.Data.Sqlite, 3.1.8"|], reportError, "net7.0")
+ let result = dp.Resolve(idm, ".fsx", [|"r", "Microsoft.Data.Sqlite, 3.1.8"|], reportError, "net8.0")
Assert.Equal(true, result.Success)
Assert.True((result.Resolutions |> Seq.length) > 1)
Assert.Equal(1, result.SourceFiles |> Seq.length)
@@ -141,7 +141,7 @@ type DependencyManagerInteractiveTests() =
Assert.Equal(0, result.SourceFiles |> Seq.length)
Assert.Equal(0, result.Roots |> Seq.length)
- let result = dp.Resolve(idm, ".fsx", [|"r", "System.Collections.Immutable.DoesNotExist"|], reportError, "net7.0")
+ let result = dp.Resolve(idm, ".fsx", [|"r", "System.Collections.Immutable.DoesNotExist"|], reportError, "net8.0")
Assert.Equal(false, result.Success)
Assert.Equal(0, result.Resolutions |> Seq.length)
Assert.Equal(0, result.SourceFiles |> Seq.length)
@@ -174,7 +174,7 @@ type DependencyManagerInteractiveTests() =
Assert.True((result1.Roots |> Seq.head).EndsWith("/fsharp.data/3.3.3/"))
Assert.True((result1.Roots |> Seq.last).EndsWith("/microsoft.netframework.referenceassemblies/1.0.0/"))
- let result2 = dp1.Resolve(idm1, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net7.0")
+ let result2 = dp1.Resolve(idm1, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net8.0")
Assert.Equal(true, result2.Success)
Assert.Equal(1, result2.Resolutions |> Seq.length)
let expected2 = "/netstandard2.0/"
@@ -195,7 +195,7 @@ type DependencyManagerInteractiveTests() =
Assert.Equal(1, result3.SourceFiles |> Seq.length)
Assert.True((result3.Roots |> Seq.head).EndsWith("/system.json/4.6.0/"))
- let result4 = dp2.Resolve(idm2, ".fsx", [|"r", "System.Json, Version=4.6.0"|], reportError, "net7.0")
+ let result4 = dp2.Resolve(idm2, ".fsx", [|"r", "System.Json, Version=4.6.0"|], reportError, "net8.0")
Assert.Equal(true, result4.Success)
Assert.Equal(1, result4.Resolutions |> Seq.length)
let expected4 = "/netstandard2.0/"
@@ -231,7 +231,7 @@ type DependencyManagerInteractiveTests() =
// Netstandard gets fewer dependencies than desktop, because desktop framework doesn't contain assemblies like System.Memory
// Those assemblies must be delivered by nuget for desktop apps
- let result2 = dp1.Resolve(idm1, ".fsx", [|"r", "Microsoft.Extensions.Configuration.Abstractions, 3.1.1"|], reportError, "net7.0")
+ let result2 = dp1.Resolve(idm1, ".fsx", [|"r", "Microsoft.Extensions.Configuration.Abstractions, 3.1.1"|], reportError, "net8.0")
Assert.Equal(true, result2.Success)
Assert.Equal(2, result2.Resolutions |> Seq.length)
let expected = "/netcoreapp3.1/"
@@ -288,7 +288,7 @@ TorchSharp.Tensor.LongTensor.From([| 0L .. 100L |]).Device
let result =
use dp = new DependencyProvider(AssemblyResolutionProbe(assemblyProbingPaths), NativeResolutionProbe(nativeProbingRoots), false)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net7.0")
+ dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net8.0")
Assert.True(result.Success, "resolve failed")
@@ -384,7 +384,7 @@ printfn ""%A"" result
let result =
use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots), false)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net7.0")
+ dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net8.0")
Assert.True(result.Success, "resolve failed")
@@ -465,7 +465,7 @@ printfn ""%A"" result
let result =
use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots), false)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net7.0")
+ dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net8.0")
Assert.True(result.Success, "resolve failed")
@@ -522,7 +522,7 @@ x |> Seq.iter(fun r ->
let result =
use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots), false)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net7.0")
+ dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net8.0")
// Expected: error FS3217: PackageManager can not reference the System Package 'FSharp.Core'
Assert.False(result.Success, "resolve succeeded but should have failed")
@@ -548,7 +548,7 @@ x |> Seq.iter(fun r ->
let result =
use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots), false)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- dp.Resolve(idm, ".csx", packagemanagerlines, reportError, "net7.0")
+ dp.Resolve(idm, ".csx", packagemanagerlines, reportError, "net8.0")
Assert.True(result.Success, "resolve failed but should have succeeded")
@@ -591,7 +591,7 @@ x |> Seq.iter(fun r ->
Assert.Equal(1, result.SourceFiles |> Seq.length)
Assert.Equal(2, result.Roots |> Seq.length)
- let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net7.0")
+ let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net8.0")
Assert.Equal(true, result.Success)
Assert.Equal(1, result.Resolutions |> Seq.length)
Assert.Equal(1, result.SourceFiles |> Seq.length)
@@ -698,7 +698,7 @@ x |> Seq.iter(fun r ->
let mutable currentPath:string = null
use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots), false)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- let result = dp.Resolve(idm, ".fsx", [|"r", "Microsoft.Data.Sqlite,3.1.7"|], reportError, "net7.0")
+ let result = dp.Resolve(idm, ".fsx", [|"r", "Microsoft.Data.Sqlite,3.1.7"|], reportError, "net8.0")
Assert.Equal(true, result.Success)
currentPath <- appendSemiColon (Environment.GetEnvironmentVariable("PATH"))
finalPath <- appendSemiColon (Environment.GetEnvironmentVariable("PATH"))
@@ -822,7 +822,7 @@ x |> Seq.iter(fun r ->
ResolvingErrorReport (report)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net7.0", timeout=0) // Fail in 0 milliseconds
+ let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net8.0", timeout=0) // Fail in 0 milliseconds
Assert.Equal(false, result.Success)
Assert.Equal(foundCorrectError, true)
Assert.Equal(foundWrongError, false)
@@ -845,7 +845,7 @@ x |> Seq.iter(fun r ->
ResolvingErrorReport (report)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=0"|], reportError, "net7.0", null, "", "", "", -1) // Wait forever
+ let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=0"|], reportError, "net8.0", null, "", "", "", -1) // Wait forever
Assert.Equal(false, result.Success)
Assert.Equal(foundCorrectError, true)
Assert.Equal(foundWrongError, false)
@@ -868,7 +868,7 @@ x |> Seq.iter(fun r ->
ResolvingErrorReport (report)
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
- let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=none"|], reportError, "net7.0", null, "", "", "", -1) // Wait forever
+ let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=none"|], reportError, "net8.0", null, "", "", "", -1) // Wait forever
Assert.Equal(true, result.Success)
Assert.Equal(foundCorrectError, false)
Assert.Equal(foundWrongError, false)
@@ -894,7 +894,7 @@ x |> Seq.iter(fun r ->
let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget")
// Resolve and cache the results won't time out
- let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=10000"|], reportError, "net7.0", null, "", "", "", -1) // Wait forever
+ let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=10000"|], reportError, "net8.0", null, "", "", "", -1) // Wait forever
// Clear the results
foundCorrectError <- false
@@ -903,9 +903,8 @@ x |> Seq.iter(fun r ->
// Now clear the cache --- this will ensure that resolving produces a timeout error. If we read from the cache the test will fail
dp.ClearResultsCache(Seq.empty, "", reportError)
- let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=0"|], reportError, "net7.0", null, "", "", "", -1) // Wait forever
+ let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=0"|], reportError, "net8.0", null, "", "", "", -1) // Wait forever
Assert.Equal(false, result.Success)
Assert.Equal(foundCorrectError, true)
Assert.Equal(foundWrongError, false)
()
-
diff --git a/tests/FSharp.Compiler.Private.Scripting.UnitTests/FSharp.Compiler.Private.Scripting.UnitTests.fsproj b/tests/FSharp.Compiler.Private.Scripting.UnitTests/FSharp.Compiler.Private.Scripting.UnitTests.fsproj
index 57eb6cbb8e2..cdfd467e5c3 100644
--- a/tests/FSharp.Compiler.Private.Scripting.UnitTests/FSharp.Compiler.Private.Scripting.UnitTests.fsproj
+++ b/tests/FSharp.Compiler.Private.Scripting.UnitTests/FSharp.Compiler.Private.Scripting.UnitTests.fsproj
@@ -2,8 +2,8 @@
- net472;net7.0
- net7.0
+ net472;net8.0
+ net8.0Librarytruexunit
diff --git a/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj b/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj
index b761ced68fd..2a64377ed57 100644
--- a/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj
+++ b/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj
@@ -3,8 +3,8 @@
Exe
- net472;net7.0
- net7.0
+ net472;net8.0
+ net8.0