From 6dd27afbdeef1c41f4d4b520b7f025d9e0384789 Mon Sep 17 00:00:00 2001 From: Kevin Ransom Date: Fri, 7 Aug 2020 01:32:50 -0700 Subject: [PATCH 1/4] Update to fsharp5 --- src/fsharp/FSharp.Core/prim-types.fsi | 19 ---------------- src/fsharp/FSharp.Core/quotations.fsi | 3 --- src/fsharp/LanguageFeatures.fs | 10 ++++----- .../InvalidNumericLiteralTests.fs | 4 ++-- .../Language/CodeQuotationTests.fs | 2 +- .../Properties/ILMemberAccessTests.fs | 8 +++---- .../Compiler/Language/InterfaceTests.fs | 4 ++-- .../Compiler/Language/OpenStaticClasses.fs | 12 +++++----- .../fsharp/Compiler/Language/WitnessTests.fs | 2 +- .../LanguagePrimitives/ComparisonTests.fs | 2 +- .../LanguagePrimitives/StringFormatTests.fs | 2 +- tests/fsharp/tests.fs | 10 ++++----- .../DataExpressions/NameOf/env.lst | 21 +++++++++--------- .../DataExpressions/ObjectExpressions/env.lst | 2 +- .../InterfaceTypes/env.lst | 22 +++++++++---------- .../UnitsOfMeasure/TypeChecker/env.lst | 2 +- 16 files changed, 52 insertions(+), 73 deletions(-) diff --git a/src/fsharp/FSharp.Core/prim-types.fsi b/src/fsharp/FSharp.Core/prim-types.fsi index 3370b69915..f363eebe28 100644 --- a/src/fsharp/FSharp.Core/prim-types.fsi +++ b/src/fsharp/FSharp.Core/prim-types.fsi @@ -1197,97 +1197,78 @@ namespace Microsoft.FSharp.Core /// A compiler intrinsic that implements dynamic invocations to the '-' operator. [] - [] val SubtractionDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations to the '/' operator. [] - [] val DivisionDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations to the unary '-' operator. [] - [] val UnaryNegationDynamic : value:'T -> 'U /// A compiler intrinsic that implements dynamic invocations to the '%' operator. [] - [] val ModulusDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations to the checked '-' operator. [] - [] val CheckedSubtractionDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations to the checked unary '-' operator. [] - [] val CheckedUnaryNegationDynamic : value:'T -> 'U /// A compiler intrinsic that implements dynamic invocations to the '<<<' operator. [] - [] val LeftShiftDynamic : value:'T1 -> shift:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations to the '>>>' operator. [] - [] val RightShiftDynamic : value:'T1 -> shift:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations to the '&&&' operator. [] - [] val BitwiseAndDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations to the '|||' operator. [] - [] val BitwiseOrDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations related to the '^^^' operator. [] - [] val ExclusiveOrDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations related to the '~~~' operator. [] - [] val LogicalNotDynamic : value:'T -> 'U /// A compiler intrinsic that implements dynamic invocations related to conversion operators. [] - [] val ExplicitDynamic : value:'T -> 'U /// A compiler intrinsic that implements dynamic invocations related to the '<' operator. [] - [] val LessThanDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations related to the '>' operator. [] - [] val GreaterThanDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations related to the '<=' operator. [] - [] val LessThanOrEqualDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations related to the '>=' operator. [] - [] val GreaterThanOrEqualDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations related to the '=' operator. [] - [] val EqualityDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations related to the '=' operator. [] - [] val InequalityDynamic : x:'T1 -> y:'T2 -> 'U /// A compiler intrinsic that implements dynamic invocations for the DivideByInt primitive. diff --git a/src/fsharp/FSharp.Core/quotations.fsi b/src/fsharp/FSharp.Core/quotations.fsi index bdeab19a85..9ab4b61ae2 100644 --- a/src/fsharp/FSharp.Core/quotations.fsi +++ b/src/fsharp/FSharp.Core/quotations.fsi @@ -124,7 +124,6 @@ type Expr = /// The list of arguments to the method. /// /// The resulting expression. - [] static member CallWithWitnesses: methodInfo: MethodInfo * methodInfoWithWitnesses: MethodInfo * witnesses: Expr list * arguments: Expr list -> Expr /// Builds an expression that represents a call to an instance method associated with an object @@ -136,7 +135,6 @@ type Expr = /// The list of arguments to the method. /// /// The resulting expression. - [] static member CallWithWitnesses: obj:Expr * methodInfo:MethodInfo * methodInfoWithWitnesses: MethodInfo * witnesses: Expr list * arguments:Expr list -> Expr /// Builds an expression that represents the coercion of an expression to a type @@ -601,7 +599,6 @@ module Patterns = /// /// (Expr option * MethodInfo * MethodInfo * Expr list) option [] - [] val (|CallWithWitnesses|_|) : input:Expr -> (Expr option * MethodInfo * MethodInfo * Expr list * Expr list) option /// An active pattern to recognize expressions that represent coercions from one type to another diff --git a/src/fsharp/LanguageFeatures.fs b/src/fsharp/LanguageFeatures.fs index ad0d8c0185..3d288d44d8 100644 --- a/src/fsharp/LanguageFeatures.fs +++ b/src/fsharp/LanguageFeatures.fs @@ -63,14 +63,14 @@ type LanguageVersion (specifiedVersionAsString) = LanguageFeature.AndBang, languageVersion50 LanguageFeature.NullableOptionalInterop, languageVersion50 LanguageFeature.DefaultInterfaceMemberConsumption, languageVersion50 + LanguageFeature.OpenStaticClasses, languageVersion50 + LanguageFeature.PackageManagement, languageVersion50 + LanguageFeature.WitnessPassing, languageVersion50 + LanguageFeature.InterfacesWithMultipleGenericInstantiation, languageVersion50 + LanguageFeature.NameOf, languageVersion50 // F# preview LanguageFeature.FromEndSlicing, previewVersion - LanguageFeature.OpenStaticClasses, previewVersion - LanguageFeature.PackageManagement, previewVersion - LanguageFeature.WitnessPassing, previewVersion - LanguageFeature.InterfacesWithMultipleGenericInstantiation, previewVersion - LanguageFeature.NameOf, previewVersion ] let specified = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidNumericLiteralTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidNumericLiteralTests.fs index 4862927ba5..e88cc641b3 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidNumericLiteralTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidNumericLiteralTests.fs @@ -60,8 +60,8 @@ module ``Numeric Literals`` = [] let ``1N is invalid numeric literal in FSI``() = if Utils.runningOnMono then () - else - CompilerAssert.RunScriptWithOptions [| "--langversion:preview"; "--test:ErrorRanges" |] + else + CompilerAssert.RunScriptWithOptions [| "--langversion:5.0"; "--test:ErrorRanges" |] """ let x = 1N """ diff --git a/tests/FSharp.Compiler.ComponentTests/Language/CodeQuotationTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/CodeQuotationTests.fs index 04e39bdb82..359c9d3389 100644 --- a/tests/FSharp.Compiler.ComponentTests/Language/CodeQuotationTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Language/CodeQuotationTests.fs @@ -36,6 +36,6 @@ let z : unit = failwithf "did not expect expression for 'z': %A" e """ |> asExe - |> withPreview + |> withOptions ["--langversion:5.0"] |> compileAndRun |> shouldSucceed diff --git a/tests/fsharp/Compiler/Conformance/Properties/ILMemberAccessTests.fs b/tests/fsharp/Compiler/Conformance/Properties/ILMemberAccessTests.fs index 730e972476..863c177e70 100644 --- a/tests/fsharp/Compiler/Conformance/Properties/ILMemberAccessTests.fs +++ b/tests/fsharp/Compiler/Conformance/Properties/ILMemberAccessTests.fs @@ -82,7 +82,7 @@ type MyFSharpClass () = |> CompilationReference.Create let fsCmpl = - Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:preview"|], cmplRefs = [csCmpl]) + Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:5.0"|], cmplRefs = [csCmpl]) CompilerAssert.CompileWithErrors(fsCmpl, [| (FSharpErrorSeverity.Error, 491, (22, 9, 22, 41), @@ -127,7 +127,7 @@ type MyFSharpClass () = |> CompilationReference.Create let fsCmpl = - Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:preview"|], cmplRefs = [csCmpl]) + Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:5.0"|], cmplRefs = [csCmpl]) CompilerAssert.CompileWithErrors(fsCmpl, [| (FSharpErrorSeverity.Error, 491, (22, 9, 22, 39), @@ -177,7 +177,7 @@ type MyFSharpClass () = |> CompilationReference.Create let fsCmpl = - Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:preview"|], cmplRefs = [csCmpl]) + Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:5.0"|], cmplRefs = [csCmpl]) CompilerAssert.CompileWithErrors(fsCmpl, [| (FSharpErrorSeverity.Error, 810, (25, 9, 25, 33), @@ -213,7 +213,7 @@ type MyFSharpClass () = |> CompilationReference.Create let fsCmpl = - Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:preview"|], cmplRefs = [csCmpl]) + Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:5.0"|], cmplRefs = [csCmpl]) CompilerAssert.CompileWithErrors(fsCmpl, [| (FSharpErrorSeverity.Error, 810, (25, 9, 25, 31), diff --git a/tests/fsharp/Compiler/Language/InterfaceTests.fs b/tests/fsharp/Compiler/Language/InterfaceTests.fs index 7f5136e3e8..1e37045828 100644 --- a/tests/fsharp/Compiler/Language/InterfaceTests.fs +++ b/tests/fsharp/Compiler/Language/InterfaceTests.fs @@ -180,7 +180,7 @@ assertion (fun (x:float) -> x * 3.0) (fun v -> ``Many Instantiations of the same interface - Asserts``, Fs, Library, options = [| - "--langversion:preview"; + "--langversion:5.0"; #if !NETSTANDARD |]) #else @@ -210,7 +210,7 @@ assertion (fun (x:float) -> x * 3.0) (fun v -> let MultipleTypedInterfacesFSharp50VerifyIl() = CompilerAssert.CompileLibraryAndVerifyILWithOptions [| - "--langversion:preview"; + "--langversion:5.0"; "--deterministic+"; "--define:NO_ANONYMOUS"; #if NETSTANDARD diff --git a/tests/fsharp/Compiler/Language/OpenStaticClasses.fs b/tests/fsharp/Compiler/Language/OpenStaticClasses.fs index deff83a5c4..e0894ba4dc 100644 --- a/tests/fsharp/Compiler/Language/OpenStaticClasses.fs +++ b/tests/fsharp/Compiler/Language/OpenStaticClasses.fs @@ -52,7 +52,7 @@ module OpenSystemMathOnce = [] let ``OpenStaticClassesTests - OpenSystemMathOnce - langversion:preview`` () = CompilerAssert.TypeCheckWithErrorsAndOptions - [| "--langversion:preview" |] + [| "--langversion:5.0" |] (baseModule + """ module OpenSystemMathOnce = @@ -82,7 +82,7 @@ module OpenSystemMathTwice = [] let ``OpenStaticClassesTests - OpenSystemMathTwice - langversion:preview`` () = CompilerAssert.TypeCheckWithErrorsAndOptions - [| "--langversion:preview" |] + [| "--langversion:5.0" |] (baseModule + """ module OpenSystemMathOnce = @@ -109,7 +109,7 @@ module OpenMyMathOnce = [] let ``OpenStaticClassesTests - OpenMyMathOnce - langversion:preview`` () = CompilerAssert.TypeCheckWithErrorsAndOptions - [| "--langversion:preview" |] + [| "--langversion:5.0" |] (baseModule + """ module OpenMyMathOnce = @@ -135,7 +135,7 @@ module DontOpenAutoMath = [] let ``OpenStaticClassesTests - DontOpenAutoMath - langversion:preview`` () = CompilerAssert.TypeCheckWithErrorsAndOptions - [| "--langversion:preview" |] + [| "--langversion:5.0" |] (baseModule + """ module DontOpenAutoMath = @@ -163,7 +163,7 @@ module OpenAutoMath = [] let ``OpenStaticClassesTests - OpenAutoMath - langversion:preview`` () = CompilerAssert.TypeCheckWithErrorsAndOptions - [| "--langversion:preview" |] + [| "--langversion:5.0" |] (baseModule + """ module OpenAutoMath = open AutoOpenMyMath @@ -176,7 +176,7 @@ module OpenAutoMath = [] let ``OpenStaticClassesTests - OpenAccessibleFields - langversion:preview`` () = CompilerAssert.TypeCheckWithErrorsAndOptions - [| "--langversion:preview" |] + [| "--langversion:5.0" |] (baseModule + """ module OpenAFieldFromMath = open System.Math diff --git a/tests/fsharp/Compiler/Language/WitnessTests.fs b/tests/fsharp/Compiler/Language/WitnessTests.fs index f5f94eb975..e920d7d40f 100644 --- a/tests/fsharp/Compiler/Language/WitnessTests.fs +++ b/tests/fsharp/Compiler/Language/WitnessTests.fs @@ -19,7 +19,7 @@ module WitnessTests = """ (dir ++ "provider.fsx")) |> asExe |> ignoreWarnings - |> withPreview + |> withOptions ["--langversion:5.0"] |> compile |> shouldSucceed |> ignore diff --git a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/ComparisonTests.fs b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/ComparisonTests.fs index b6f471608e..4e5c5d2657 100644 --- a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/ComparisonTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/ComparisonTests.fs @@ -24,7 +24,7 @@ module ``Comparison Tests`` = // Regression test for FSHARP1.0:5640 // This is a sanity test: more coverage in FSHARP suite... - CompilerAssert.RunScriptWithOptions [| "--langversion:preview" |] + CompilerAssert.RunScriptWithOptions [| "--langversion:5.0" |] """ type 'a www = W of 'a diff --git a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/StringFormatTests.fs b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/StringFormatTests.fs index a912ab3556..7e5f01967a 100644 --- a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/StringFormatTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/StringFormatTests.fs @@ -143,7 +143,7 @@ module ``String Format Tests`` = let ``string constructor in FSI``() = // Regression test for FSHARP1.0:5894 - CompilerAssert.RunScriptWithOptions [| "--langversion:preview" |] + CompilerAssert.RunScriptWithOptions [| "--langversion:5.0" |] """ let assertEqual a b = if a <> b then failwithf "Expected '%s', but got '%s'" a b diff --git a/tests/fsharp/tests.fs b/tests/fsharp/tests.fs index ba2223ce8c..7110e76f27 100644 --- a/tests/fsharp/tests.fs +++ b/tests/fsharp/tests.fs @@ -872,7 +872,7 @@ module CoreTests = [] let ``printing-1 --langversion:5.0`` () = - printing "--langversion:preview" "z.output.test.default.stdout.50.txt" "z.output.test.default.stdout.50.bsl" "z.output.test.default.stderr.txt" "z.output.test.default.stderr.bsl" + printing "--langversion:5.0" "z.output.test.default.stdout.50.txt" "z.output.test.default.stdout.50.bsl" "z.output.test.default.stderr.txt" "z.output.test.default.stderr.bsl" [] let ``printing-2 --langversion:4.7`` () = @@ -880,7 +880,7 @@ module CoreTests = [] let ``printing-2 --langversion:5.0`` () = - printing "--langversion:preview --use:preludePrintSize1000.fsx" "z.output.test.1000.stdout.50.txt" "z.output.test.1000.stdout.50.bsl" "z.output.test.1000.stderr.txt" "z.output.test.1000.stderr.bsl" + printing "--langversion:5.0 --use:preludePrintSize1000.fsx" "z.output.test.1000.stdout.50.txt" "z.output.test.1000.stdout.50.bsl" "z.output.test.1000.stderr.txt" "z.output.test.1000.stderr.bsl" [] let ``printing-3 --langversion:4.7`` () = @@ -888,7 +888,7 @@ module CoreTests = [] let ``printing-3 --langversion:5.0`` () = - printing "--langversion:preview --use:preludePrintSize200.fsx" "z.output.test.200.stdout.50.txt" "z.output.test.200.stdout.50.bsl" "z.output.test.200.stderr.txt" "z.output.test.200.stderr.bsl" + printing "--langversion:5.0 --use:preludePrintSize200.fsx" "z.output.test.200.stdout.50.txt" "z.output.test.200.stdout.50.bsl" "z.output.test.200.stderr.txt" "z.output.test.200.stderr.bsl" [] let ``printing-4 --langversion:4.7`` () = @@ -896,7 +896,7 @@ module CoreTests = [] let ``printing-4 --langversion:5.0`` () = - printing "--langversion:preview --use:preludeShowDeclarationValuesFalse.fsx" "z.output.test.off.stdout.50.txt" "z.output.test.off.stdout.50.bsl" "z.output.test.off.stderr.txt" "z.output.test.off.stderr.bsl" + printing "--langversion:5.0 --use:preludeShowDeclarationValuesFalse.fsx" "z.output.test.off.stdout.50.txt" "z.output.test.off.stdout.50.bsl" "z.output.test.off.stderr.txt" "z.output.test.off.stderr.bsl" [] let ``printing-5`` () = @@ -994,7 +994,7 @@ module CoreTests = csc cfg """/nologo /target:library /out:cslib.dll""" ["cslib.cs"] - fsc cfg "%s --define:LANGVERSION_PREVIEW --langversion:preview -o:test.exe -r cslib.dll -g" cfg.fsc_flags ["test.fsx"] + fsc cfg "%s --define:LANGVERSION_PREVIEW --langversion:5.0 -o:test.exe -r cslib.dll -g" cfg.fsc_flags ["test.fsx"] peverify cfg "test.exe" diff --git a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/NameOf/env.lst b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/NameOf/env.lst index 2d918a0ca1..f637b6f594 100644 --- a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/NameOf/env.lst +++ b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/NameOf/env.lst @@ -1,10 +1,11 @@ - SOURCE=E_NameOfIntConst.fs SCFLAGS="--langversion:preview" # E_NameOfIntConst.fs - SOURCE=E_NameOfStringConst.fs SCFLAGS="--langversion:preview" # E_NameOfStringConst.fs - SOURCE=E_NameOfAppliedFunction.fs SCFLAGS="--langversion:preview" # E_NameOfAppliedFunction.fs - SOURCE=E_NameOfIntegerAppliedFunction.fs SCFLAGS="--langversion:preview" # E_NameOfIntegerAppliedFunction.fs - SOURCE=E_NameOfPartiallyAppliedFunction.fs SCFLAGS="--langversion:preview" # E_NameOfPartiallyAppliedFunction.fs - SOURCE=E_NameOfDictLookup.fs SCFLAGS="--langversion:preview" # E_NameOfDictLookup.fs - SOURCE=E_NameOfParameterAppliedFunction.fs SCFLAGS="--langversion:preview" # E_NameOfParameterAppliedFunction.fs - SOURCE=E_NameOfAsAFunction.fs SCFLAGS="--langversion:preview" # E_NameOfAsAFunction.fs - SOURCE=E_NameOfWithPipe.fs SCFLAGS="--langversion:preview" # E_NameOfWithPipe.fs - SOURCE=E_NameOfUnresolvableName.fs SCFLAGS="--langversion:preview" # E_NameOfUnresolvableName.fs + SOURCE=E_NameOfIntConst.fs SCFLAGS="--langversion:5.0" # E_NameOfIntConst.fs + SOURCE=E_NameOfStringConst.fs SCFLAGS="--langversion:5.0" # E_NameOfStringConst.fs + SOURCE=E_NameOfAppliedFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfAppliedFunction.fs + SOURCE=E_NameOfIntegerAppliedFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfIntegerAppliedFunction.fs + SOURCE=E_NameOfPartiallyAppliedFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfPartiallyAppliedFunction.fs + SOURCE=E_NameOfDictLookup.fs SCFLAGS="--langversion:5.0" # E_NameOfDictLookup.fs + SOURCE=E_NameOfAdditionExpr.fs SCFLAGS="--langversion:5.0" # E_NameOfAdditionExpr.fs + SOURCE=E_NameOfParameterAppliedFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfParameterAppliedFunction.fs + SOURCE=E_NameOfAsAFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfAsAFunction.fs + SOURCE=E_NameOfWithPipe.fs SCFLAGS="--langversion:5.0" # E_NameOfWithPipe.fs + SOURCE=E_NameOfUnresolvableName.fs SCFLAGS="--langversion:5.0" # E_NameOfUnresolvableName.fs diff --git a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/env.lst b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/env.lst index 282455a255..97d50b142e 100644 --- a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/env.lst +++ b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/env.lst @@ -18,5 +18,5 @@ SOURCE=E_ObjExprWithOverride01.fs SCFLAGS="-r:Helper.dll --test:ErrorRanges" PRECMD="\$CSC_PIPE /t:library Helper.cs" # E_ObjExprWithOverride01.fs SOURCE=InterfaceObjectExpression01.fs # InterfaceObjectExpression01.fs SOURCE=E_ObjExprWithSameInterface01.4.7.fs SCFLAGS="--test:ErrorRanges --langversion:4.7" # E_ObjExprWithSameInterface01.4.7.fs - SOURCE=E_ObjExprWithSameInterface01.5.0.fs SCFLAGS="--test:ErrorRanges --langversion:preview" # E_ObjExprWithSameInterface01.5.0.fs + SOURCE=E_ObjExprWithSameInterface01.5.0.fs SCFLAGS="--test:ErrorRanges --langversion:5.0" # E_ObjExprWithSameInterface01.5.0.fs SOURCE=MultipleInterfacesInObjExpr.fs # MultipleInterfacesInObjExpr.fs \ No newline at end of file diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/env.lst b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/env.lst index 8b359f887c..81e9633778 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/env.lst +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/env.lst @@ -7,17 +7,17 @@ SOURCE=InterfaceMember_NameCollisions.fs SCFLAGS=--test:ErrorRanges # InterfaceMember_NameCollisions.fs SOURCE=E_MultipleInst01.4.7.fs SCFLAGS="--test:ErrorRanges --langversion:4.7" # E_MultipleInst01.4.7.fs - SOURCE=MultipleInst01.5.0.fs SCFLAGS="--test:ErrorRanges --langversion:preview" # MultipleInst01.5.0.fs + SOURCE=MultipleInst01.5.0.fs SCFLAGS="--test:ErrorRanges --langversion:5.0" # MultipleInst01.5.0.fs SOURCE=MultipleInst02.fs SCFLAGS=--test:ErrorRanges # MultipleInst02.fs SOURCE=MultipleInst03.fs SCFLAGS=--test:ErrorRanges # MultipleInst03.fs SOURCE=E_MultipleInst04.4.7.fs SCFLAGS="--test:ErrorRanges --langversion:4.7" # E_MultipleInst04.4.7.fs - SOURCE=MultipleInst04.5.0.fs SCFLAGS=--test:ErrorRanges --langversion:preview" # MultipleInst04.5.0.fs + SOURCE=MultipleInst04.5.0.fs SCFLAGS=--test:ErrorRanges --langversion:5.0" # MultipleInst04.5.0.fs SOURCE=MultipleInst05.fs SCFLAGS=--test:ErrorRanges # MultipleInst05.fs SOURCE=MultipleInst06.fs SCFLAGS="--test:ErrorRanges" # MultipleInst06.fs SOURCE=E_MultipleInst07.4.7.fs SCFLAGS="--test:ErrorRanges --langversion:4.7 --nowarn:221" # E_MultipleInst07.4.7.fs - SOURCE=E_MultipleInst07.5.0.fs SCFLAGS="--test:ErrorRanges --langversion:preview --nowarn:221" # E_MultipleInst07.5.0.fs + SOURCE=E_MultipleInst07.5.0.fs SCFLAGS="--test:ErrorRanges --langversion:5.0 --nowarn:221" # E_MultipleInst07.5.0.fs - SOURCE=Inheritance_OverrideInterface.fs SCFLAGS="--test:ErrorRanges --langversion:preview" # Inheritance_OverrideInterface.fs + SOURCE=Inheritance_OverrideInterface.fs SCFLAGS="--test:ErrorRanges --langversion:5.0" # Inheritance_OverrideInterface.fs SOURCE=InheritFromIComparable01.fs SCFLAGS=-a # InheritFromIComparable01.fs SOURCE=E_InterfaceNotFullyImpl01.fs SCFLAGS="--test:ErrorRanges" # E_InterfaceNotFullyImpl01.fs SOURCE=E_InterfaceNotFullyImpl02.fs SCFLAGS="--test:ErrorRanges" # E_InterfaceNotFullyImpl02.fs @@ -34,20 +34,20 @@ SOURCE=ConsumeFromCS.fs POSTCMD="\$CSC_PIPE -r:ConsumeFromCS.dll CallFSharpInterface.cs && CallFSharpInterface.exe" SCFLAGS=-a # ConsumeFromCS.fs NoMT SOURCE=CallCSharpInterface.fs PRECMD="\$CSC_PIPE /t:library ConsumeFromFS.cs" SCFLAGS="-r:ConsumeFromFS.dll" # CallCSharpInterface.fs - SOURCE=E_MultipleInterfaceInheritance.fs SCFLAGS="--test:ErrorRanges --flaterrors" # E_MultipleInterfaceInheritance.fs + SOURCE=E_MultipleInterfaceInheritance.fs SCFLAGS="--test:ErrorRanges --flaterrors" # E_MultipleInterfaceInheritance.fs NoMT SOURCE=E_ConsumeMultipleInterfaceFromCS.4.7.fs PRECMD="\$CSC_PIPE /t:library MultipleInterfaceInheritanceFromCS.cs" SCFLAGS="-r:MultipleInterfaceInheritanceFromCS.dll --test:ErrorRanges --langversion:4.7" # E_ConsumeMultipleInterfaceFromCS.4.7.fs -NoMT SOURCE=ConsumeMultipleInterfaceFromCS.5.0.fs PRECMD="\$CSC_PIPE /t:library MultipleInterfaceInheritanceFromCS.cs" SCFLAGS="-r:MultipleInterfaceInheritanceFromCS.dll --langversion:preview" # ConsumeMultipleInterfaceFromCS.5.0.fs +NoMT SOURCE=ConsumeMultipleInterfaceFromCS.5.0.fs PRECMD="\$CSC_PIPE /t:library MultipleInterfaceInheritanceFromCS.cs" SCFLAGS="-r:MultipleInterfaceInheritanceFromCS.dll --langversion:5.0" # ConsumeMultipleInterfaceFromCS.5.0.fs -NoMT SOURCE=E_ClassConsumeMultipleInterfaceFromCS.4.7.fs PRECMD="\$CSC_PIPE /t:library MultipleInterfaceInheritanceFromCS.cs" SCFLAGS="-r:MultipleInterfaceInheritanceFromCS.dll --test:ErrorRanges --langversion:4.7" # E_ClassConsumeMultipleInterfaceFromCS.4.7.fs -NoMT SOURCE=ClassConsumeMultipleInterfaceFromCS.5.0.fs PRECMD="\$CSC_PIPE /t:library MultipleInterfaceInheritanceFromCS.cs" SCFLAGS="-r:MultipleInterfaceInheritanceFromCS.dll --test:ErrorRanges --langversion:preview" # ClassConsumeMultipleInterfaceFromCS.5.0.fs +NoMT SOURCE=E_ClassConsumeMultipleInterfaceFromCS.4.7.fs PRECMD="\$CSC_PIPE /t:library MultipleInterfaceInheritanceFromCS.cs" SCFLAGS="-r:MultipleInterfaceInheritanceFromCS.dll --test:ErrorRanges --langversion:4.7" # E_ClassConsumeMultipleInterfaceFromCS.4.7.fs +NoMT SOURCE=ClassConsumeMultipleInterfaceFromCS.5.0.fs PRECMD="\$CSC_PIPE /t:library MultipleInterfaceInheritanceFromCS.cs" SCFLAGS="-r:MultipleInterfaceInheritanceFromCS.dll --test:ErrorRanges --langversion:5.0" # ClassConsumeMultipleInterfaceFromCS.5.0.fs SOURCE="E_ImplementGenIFaceTwice01_4.7.fs" SCFLAGS="--test:ErrorRanges --langversion:4.7 --nowarn:221" # E_ImplementGenIFaceTwice01_4.7.fs - SOURCE="E_ImplementGenIFaceTwice01_5.0.fs" SCFLAGS="--test:ErrorRanges --langversion:preview --nowarn:221" # E_ImplementGenIFaceTwice01_5.0.fs + SOURCE="E_ImplementGenIFaceTwice01_5.0.fs" SCFLAGS="--test:ErrorRanges --langversion:5.0 --nowarn:221" # E_ImplementGenIFaceTwice01_5.0.fs SOURCE="E_ImplementGenIFaceTwice02_4.7.fs" SCFLAGS="--test:ErrorRanges --langversion:4.7 --nowarn:221" # E_ImplementGenIFaceTwice02_4.7.fs - SOURCE="ImplementGenIFaceTwice02_5.0.fs" SCFLAGS="--test:ErrorRanges --langversion:preview --nowarn:221" # ImplementGenIFaceTwice02_5.0.fs + SOURCE="ImplementGenIFaceTwice02_5.0.fs" SCFLAGS="--test:ErrorRanges --langversion:5.0 --nowarn:221" # ImplementGenIFaceTwice02_5.0.fs - SOURCE=EmptyInterface01.fs # EmptyInterface01.fs + SOURCE=EmptyInterface01.fs # EmptyInterface01.fs SOURCE=InheritDotNetInterface.fs # InheritDotNetInterface.fs SOURCE=E_AnonymousTypeInInterface01.fs SCFLAGS="--test:ErrorRanges" # E_AnonymousTypeInInterface01.fs \ No newline at end of file diff --git a/tests/fsharpqa/Source/Conformance/UnitsOfMeasure/TypeChecker/env.lst b/tests/fsharpqa/Source/Conformance/UnitsOfMeasure/TypeChecker/env.lst index 0927b9895f..17899b7d4f 100644 --- a/tests/fsharpqa/Source/Conformance/UnitsOfMeasure/TypeChecker/env.lst +++ b/tests/fsharpqa/Source/Conformance/UnitsOfMeasure/TypeChecker/env.lst @@ -5,7 +5,7 @@ SOURCE=Generalization01.fs SCFLAGS=--warnaserror # Generalization01.fs - SOURCE=E_GenInterfaceWithDifferentGenInstantiations.fs SCFLAGS="--test:ErrorRanges --langversion:preview" # E_GenInterfaceWithDifferentGenInstantiations.fs + SOURCE=E_GenInterfaceWithDifferentGenInstantiations.fs SCFLAGS="--test:ErrorRanges --langversion:5.0" # E_GenInterfaceWithDifferentGenInstantiations.fs SOURCE=TypeAbbreviation_decimal_01.fs # TypeAbbreviation_decimal_01.fs SOURCE=TypeAbbreviation_float32_01.fs # TypeAbbreviation_float32_01.fs From 93a274bf8f9250e486451d14f963cf5df65cd0b5 Mon Sep 17 00:00:00 2001 From: Kevin Ransom Date: Wed, 29 Jul 2020 14:14:51 -0700 Subject: [PATCH 2/4] Update preview error messages --- tests/fsharp/Compiler/Language/InterfaceTests.fs | 2 +- .../ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs | 2 +- .../E_ClassConsumeMultipleInterfaceFromCS.4.7.fs | 2 +- .../InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs | 6 +++--- .../InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs | 2 +- .../InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs | 2 +- .../InterfaceTypes/E_MultipleInst01.4.7.fs | 2 +- .../InterfaceTypes/E_MultipleInst04.4.7.fs | 2 +- .../InterfaceTypes/E_MultipleInst07.4.7.fs | 2 +- 9 files changed, 11 insertions(+), 11 deletions(-) diff --git a/tests/fsharp/Compiler/Language/InterfaceTests.fs b/tests/fsharp/Compiler/Language/InterfaceTests.fs index 1e37045828..9216883176 100644 --- a/tests/fsharp/Compiler/Language/InterfaceTests.fs +++ b/tests/fsharp/Compiler/Language/InterfaceTests.fs @@ -203,7 +203,7 @@ assertion (fun (x:float) -> x * 3.0) (fun v -> |] ``Many Instantiations of the same interface`` [| - (FSharpErrorSeverity.Error, 3350, (24, 6, 24, 20), "Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater.") + (FSharpErrorSeverity.Error, 3350, (24, 6, 24, 20), "Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater.") |] [] diff --git a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs index f579046fc7..58ea985fc4 100644 --- a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs @@ -1,6 +1,6 @@ // #Regression #Conformance #DataExpressions #ObjectConstructors // This was Dev10:854519 and Dev11:5525. The fix was to make this a compile error to avoid a runtime exception. -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. type IQueue<'a> = abstract Addd: 'a -> IQueue<'a> diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ClassConsumeMultipleInterfaceFromCS.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ClassConsumeMultipleInterfaceFromCS.4.7.fs index 244042abc5..7de055367a 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ClassConsumeMultipleInterfaceFromCS.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ClassConsumeMultipleInterfaceFromCS.4.7.fs @@ -1,5 +1,5 @@ // #Conformance #ObjectOrientedTypes #InterfacesAndImplementations #ReqNOMT -// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. +// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. #light let mutable res = true diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs index 8be65e7fcc..030ee7e26e 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs @@ -1,7 +1,7 @@ // #Conformance #ObjectOrientedTypes #InterfacesAndImplementations #ReqNOMT -// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. -// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. -// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. +// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. #light let mutable res = true diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs index 1a9cf23b6c..3cc97b5f7f 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs @@ -1,7 +1,7 @@ // #Regression #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Verify error when trying to implement the same generic interface twice. // Regression for FSB 3574, PE Verification failure when implementing multiple generic interfaces (one generic, one specifc) -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. type IA<'b> = interface diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs index adbbffd0ea..51eab35a38 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs @@ -1,6 +1,6 @@ // #Regression #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Verify error when trying to implement the same generic interface twice -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. type IFoo<'a> = interface diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst01.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst01.4.7.fs index 3c8530813b..3b4d530dae 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst01.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst01.4.7.fs @@ -1,7 +1,7 @@ // #Regression #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Regression test for FSHARP1.0:5540 // Prior to F# 5.0 it was forbidden to implement an interface at multiple instantiations -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. type IA<'a> = interface diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst04.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst04.4.7.fs index b559e89569..ae2f0bcdd4 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst04.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst04.4.7.fs @@ -1,7 +1,7 @@ // #Regression #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Regression test for FSHARP1.0:5540 // It is forbidden to implement an interface at multiple instantiations -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. type IA<'a, 'b> = diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst07.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst07.4.7.fs index 316919a029..fb2f05b573 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst07.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst07.4.7.fs @@ -1,7 +1,7 @@ // #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Aliased types should correctly unify, even in combination with a measure. -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 'preview' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. type MyInt = int [] type kg From 45fe8eac81b1ed8b3d2729b8bd24b54594d81ee9 Mon Sep 17 00:00:00 2001 From: Kevin Ransom Date: Wed, 29 Jul 2020 15:12:41 -0700 Subject: [PATCH 3/4] Update error messages --- tests/fsharp/Compiler/Language/InterfaceTests.fs | 2 +- .../ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs | 2 +- .../E_ClassConsumeMultipleInterfaceFromCS.4.7.fs | 2 +- .../InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs | 6 +++--- .../InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs | 2 +- .../InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs | 2 +- .../InterfaceTypes/E_MultipleInst01.4.7.fs | 2 +- .../InterfaceTypes/E_MultipleInst04.4.7.fs | 2 +- .../InterfaceTypes/E_MultipleInst07.4.7.fs | 2 +- 9 files changed, 11 insertions(+), 11 deletions(-) diff --git a/tests/fsharp/Compiler/Language/InterfaceTests.fs b/tests/fsharp/Compiler/Language/InterfaceTests.fs index 9216883176..3b24027746 100644 --- a/tests/fsharp/Compiler/Language/InterfaceTests.fs +++ b/tests/fsharp/Compiler/Language/InterfaceTests.fs @@ -203,7 +203,7 @@ assertion (fun (x:float) -> x * 3.0) (fun v -> |] ``Many Instantiations of the same interface`` [| - (FSharpErrorSeverity.Error, 3350, (24, 6, 24, 20), "Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater.") + (FSharpErrorSeverity.Error, 3350, (24, 6, 24, 20), "Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater.") |] [] diff --git a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs index 58ea985fc4..6db2950642 100644 --- a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ObjectExpressions/E_ObjExprWithSameInterface01.4.7.fs @@ -1,6 +1,6 @@ // #Regression #Conformance #DataExpressions #ObjectConstructors // This was Dev10:854519 and Dev11:5525. The fix was to make this a compile error to avoid a runtime exception. -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. type IQueue<'a> = abstract Addd: 'a -> IQueue<'a> diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ClassConsumeMultipleInterfaceFromCS.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ClassConsumeMultipleInterfaceFromCS.4.7.fs index 7de055367a..5c47e255fa 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ClassConsumeMultipleInterfaceFromCS.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ClassConsumeMultipleInterfaceFromCS.4.7.fs @@ -1,5 +1,5 @@ // #Conformance #ObjectOrientedTypes #InterfacesAndImplementations #ReqNOMT -// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. #light let mutable res = true diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs index 030ee7e26e..7f3c57e8b8 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ConsumeMultipleInterfaceFromCS.4.7.fs @@ -1,7 +1,7 @@ // #Conformance #ObjectOrientedTypes #InterfacesAndImplementations #ReqNOMT -// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. -// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. -// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. +// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. +// Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. #light let mutable res = true diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs index 3cc97b5f7f..4664b91168 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice01_4.7.fs @@ -1,7 +1,7 @@ // #Regression #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Verify error when trying to implement the same generic interface twice. // Regression for FSB 3574, PE Verification failure when implementing multiple generic interfaces (one generic, one specifc) -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. type IA<'b> = interface diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs index 51eab35a38..b49cb87db3 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_ImplementGenIFaceTwice02_4.7.fs @@ -1,6 +1,6 @@ // #Regression #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Verify error when trying to implement the same generic interface twice -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. type IFoo<'a> = interface diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst01.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst01.4.7.fs index 3b4d530dae..f3a3babb55 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst01.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst01.4.7.fs @@ -1,7 +1,7 @@ // #Regression #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Regression test for FSHARP1.0:5540 // Prior to F# 5.0 it was forbidden to implement an interface at multiple instantiations -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. type IA<'a> = interface diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst04.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst04.4.7.fs index ae2f0bcdd4..71eb461b57 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst04.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst04.4.7.fs @@ -1,7 +1,7 @@ // #Regression #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Regression test for FSHARP1.0:5540 // It is forbidden to implement an interface at multiple instantiations -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. type IA<'a, 'b> = diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst07.4.7.fs b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst07.4.7.fs index fb2f05b573..9abd5c567c 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst07.4.7.fs +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/InterfaceTypes/E_MultipleInst07.4.7.fs @@ -1,7 +1,7 @@ // #Conformance #ObjectOrientedTypes #InterfacesAndImplementations // Aliased types should correctly unify, even in combination with a measure. -//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version '5.0' or greater. +//Feature 'interfaces with multiple generic instantiation' is not available in F# 4.7. Please use language version 5.0 or greater. type MyInt = int [] type kg From 57367a6c62cc0e7238cec3d4757d0846ece116b7 Mon Sep 17 00:00:00 2001 From: Kevin Ransom Date: Fri, 7 Aug 2020 01:46:56 -0700 Subject: [PATCH 4/4] fix --- .../Conformance/Expressions/DataExpressions/NameOf/env.lst | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/NameOf/env.lst b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/NameOf/env.lst index f637b6f594..c9cae6382f 100644 --- a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/NameOf/env.lst +++ b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/NameOf/env.lst @@ -4,7 +4,6 @@ SOURCE=E_NameOfIntegerAppliedFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfIntegerAppliedFunction.fs SOURCE=E_NameOfPartiallyAppliedFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfPartiallyAppliedFunction.fs SOURCE=E_NameOfDictLookup.fs SCFLAGS="--langversion:5.0" # E_NameOfDictLookup.fs - SOURCE=E_NameOfAdditionExpr.fs SCFLAGS="--langversion:5.0" # E_NameOfAdditionExpr.fs SOURCE=E_NameOfParameterAppliedFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfParameterAppliedFunction.fs SOURCE=E_NameOfAsAFunction.fs SCFLAGS="--langversion:5.0" # E_NameOfAsAFunction.fs SOURCE=E_NameOfWithPipe.fs SCFLAGS="--langversion:5.0" # E_NameOfWithPipe.fs