diff --git a/FSharpBuild.Directory.Build.props b/FSharpBuild.Directory.Build.props
index 9358ae23153..3d0ccc3d95c 100644
--- a/FSharpBuild.Directory.Build.props
+++ b/FSharpBuild.Directory.Build.props
@@ -13,6 +13,10 @@
true
+
+ $(FSCoreShippedVersion)
+
+
$(RepoRoot)src
$(RepoRoot)tests
diff --git a/eng/Versions.props b/eng/Versions.props
index 8ee3c5669cf..3808fa872cb 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -13,9 +13,9 @@
beta
- 6
+ 7
0
- 6
+ 0
0
@@ -28,18 +28,19 @@
$(FSMajorVersion)-$(FSMinorVersion)-$(FSBuildVersion)
$(FSMajorVersion).$(FSMinorVersion).$(FSBuildVersion)
$(FSMajorVersion).$(FSMinorVersion).0.0
+ 6.0.0.0
- 41
- 0
- 6
+ 42
+ 7
+ 100
$(FSRevisionVersion)
$(FCSMajorVersion).$(FCSMinorVersion).$(FCSBuildVersion)
$(FCSMajorVersion).$(FCSMinorVersion).$(FCSBuildVersion).$(FCSRevisionVersion)
$(FCSMajorVersion)$(FCSMinorVersion)$(FCSBuildVersion)
- 6.0.3
+ 6.0.5
$(FSCorePackageVersionValue)-$(PreReleaseVersionLabel).*
@@ -47,7 +48,7 @@
12
0
- 4
+ 5
$(FSRevisionVersion)
$(FSToolsMajorVersion).$(FSToolsMinorVersion).$(FSToolsBuildVersion)
$(FSToolsMajorVersion)-$(FSToolsMinorVersion)-$(FSToolsBuildVersion)
diff --git a/src/Compiler/Facilities/LanguageFeatures.fs b/src/Compiler/Facilities/LanguageFeatures.fs
index 683dddd2e4f..48ca4b9be52 100644
--- a/src/Compiler/Facilities/LanguageFeatures.fs
+++ b/src/Compiler/Facilities/LanguageFeatures.fs
@@ -63,15 +63,16 @@ type LanguageVersion(versionText) =
static let languageVersion47 = 4.7m
static let languageVersion50 = 5.0m
static let languageVersion60 = 6.0m
+ static let languageVersion70 = 7.0m
static let previewVersion = 9999m // Language version when preview specified
- static let defaultVersion = languageVersion60 // Language version when default specified
+ static let defaultVersion = languageVersion70 // Language version when default specified
static let latestVersion = defaultVersion // Language version when latest specified
- static let latestMajorVersion = languageVersion60 // Language version when latestmajor specified
+ static let latestMajorVersion = languageVersion70 // Language version when latestmajor specified
static let validOptions = [| "preview"; "default"; "latest"; "latestmajor" |]
static let languageVersions =
- set [| languageVersion46; languageVersion47; languageVersion50; languageVersion60 |]
+ set [| languageVersion46; languageVersion47; languageVersion50; languageVersion60; languageVersion70 |]
static let features =
dict
@@ -110,17 +111,19 @@ type LanguageVersion(versionText) =
LanguageFeature.AttributesToRightOfModuleKeyword, languageVersion60
LanguageFeature.DelegateTypeNameResolutionFix, languageVersion60
+ // F# 7.0
+ LanguageFeature.MLCompatRevisions, languageVersion70
+ LanguageFeature.BetterExceptionPrinting, languageVersion70
+ LanguageFeature.ReallyLongLists, languageVersion70
+ LanguageFeature.ErrorOnDeprecatedRequireQualifiedAccess, languageVersion70
+ LanguageFeature.RequiredPropertiesSupport, languageVersion70
+ LanguageFeature.InitPropertiesSupport, languageVersion70
+ LanguageFeature.LowercaseDUWhenRequireQualifiedAccess, languageVersion70
+ LanguageFeature.InterfacesWithAbstractStaticMembers, languageVersion70
+ LanguageFeature.SelfTypeConstraints, languageVersion70
+
// F# preview
LanguageFeature.FromEndSlicing, previewVersion
- LanguageFeature.MLCompatRevisions, previewVersion
- LanguageFeature.BetterExceptionPrinting, previewVersion
- LanguageFeature.ReallyLongLists, previewVersion
- LanguageFeature.ErrorOnDeprecatedRequireQualifiedAccess, previewVersion
- LanguageFeature.RequiredPropertiesSupport, previewVersion
- LanguageFeature.InitPropertiesSupport, previewVersion
- LanguageFeature.LowercaseDUWhenRequireQualifiedAccess, previewVersion
- LanguageFeature.InterfacesWithAbstractStaticMembers, previewVersion
- LanguageFeature.SelfTypeConstraints, previewVersion
]
static let defaultLanguageVersion = LanguageVersion("default")
@@ -138,6 +141,8 @@ type LanguageVersion(versionText) =
| "5" -> languageVersion50
| "6.0"
| "6" -> languageVersion60
+ | "7.0"
+ | "7" -> languageVersion70
| _ -> 0m
let specified = getVersionFromString versionText
diff --git a/src/FSharp.Build/FSharp.Build.fsproj b/src/FSharp.Build/FSharp.Build.fsproj
index 6d4e62518f0..9bfe2497b45 100644
--- a/src/FSharp.Build/FSharp.Build.fsproj
+++ b/src/FSharp.Build/FSharp.Build.fsproj
@@ -56,15 +56,7 @@
-
-
-
-
-
-
+
diff --git a/src/FSharp.Core/prim-types.fs b/src/FSharp.Core/prim-types.fs
index bed3157a649..3191bf8c649 100644
--- a/src/FSharp.Core/prim-types.fs
+++ b/src/FSharp.Core/prim-types.fs
@@ -4107,7 +4107,6 @@ namespace Microsoft.FSharp.Collections
let start = if i < 0 then 0 else i
PrivateListHelpers.sliceTake (j - start) (PrivateListHelpers.sliceSkip start l)
- []
member l.GetReverseIndex(_: int, offset: int) =
l.Length - offset - 1
@@ -6901,10 +6900,8 @@ namespace Microsoft.FSharp.Core
if n >= 0 then PowDecimal x n else 1.0M / PowDecimal x n)
[]
- []
module ArrayExtensions =
type ``[,,,]``<'T> with
- []
member arr.GetReverseIndex(dim: int, offset: int) =
let len =
match dim with
@@ -6917,7 +6914,6 @@ namespace Microsoft.FSharp.Core
len - offset - 1
type ``[,,]``<'T> with
- []
member arr.GetReverseIndex(dim: int, offset: int) =
let len =
match dim with
@@ -6929,7 +6925,6 @@ namespace Microsoft.FSharp.Core
len - offset - 1
type ``[,]``<'T> with
- []
member arr.GetReverseIndex(dim: int, offset: int) =
let len =
match dim with
@@ -6940,11 +6935,9 @@ namespace Microsoft.FSharp.Core
len - offset - 1
type ``[]``<'T> with
- []
member arr.GetReverseIndex (_: int, offset: int) = arr.Length - offset - 1
type String with
- []
member str.GetReverseIndex (_: int, offset: int) = str.Length - offset - 1
namespace Microsoft.FSharp.Control
diff --git a/src/FSharp.Core/prim-types.fsi b/src/FSharp.Core/prim-types.fsi
index d0e56e1453d..80b48b92345 100644
--- a/src/FSharp.Core/prim-types.fsi
+++ b/src/FSharp.Core/prim-types.fsi
@@ -2555,7 +2555,6 @@ namespace Microsoft.FSharp.Collections
/// The offset from the end.
///
/// The corresponding index from the start.
- []
member GetReverseIndex: rank: int * offset: int -> int
/// Returns a list with head as its first element and tail as its subsequent elements
@@ -4601,7 +4600,6 @@ namespace Microsoft.FSharp.Core
/// Contains extension methods to allow the use of F# indexer notation with arrays.
/// This module is automatically opened in all F# code.
[]
- []
module ArrayExtensions =
type ``[,,,]``<'T> with
/// Get the index for the element offset elements away from the end of the collection.
@@ -4610,7 +4608,6 @@ namespace Microsoft.FSharp.Core
/// The offset from the end.
///
/// The corresponding index from the start.
- []
member GetReverseIndex: rank: int * offset: int -> int
type ``[,,]``<'T> with
@@ -4620,7 +4617,6 @@ namespace Microsoft.FSharp.Core
/// The offset from the end.
///
/// The corresponding index from the start.
- []
member GetReverseIndex: rank: int * offset: int -> int
type ``[,]``<'T> with
@@ -4630,7 +4626,6 @@ namespace Microsoft.FSharp.Core
/// The offset from the end.
///
/// The corresponding index from the start.
- []
member GetReverseIndex: rank: int * offset: int -> int
type ``[]``<'T> with
@@ -4640,7 +4635,6 @@ namespace Microsoft.FSharp.Core
/// The offset from the end.
///
/// The corresponding index from the start.
- []
member GetReverseIndex: rank: int * offset: int -> int
type System.String with
@@ -4650,7 +4644,6 @@ namespace Microsoft.FSharp.Core
/// The offset from the end.
///
/// The corresponding index from the start.
- []
member GetReverseIndex: rank: int * offset: int -> int
/// A module of compiler intrinsic functions for efficient implementations of F# integer ranges
diff --git a/src/FSharp.Core/tasks.fsi b/src/FSharp.Core/tasks.fsi
index 1374895ed1f..8a13212d514 100644
--- a/src/FSharp.Core/tasks.fsi
+++ b/src/FSharp.Core/tasks.fsi
@@ -15,7 +15,6 @@ namespace Microsoft.FSharp.Control
/// The extra data stored in ResumableStateMachine for tasks
///
[]
- []
[]
type TaskStateMachineData<'T> =
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/ModuleDefinitions/ModuleDefinitions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/ModuleDefinitions/ModuleDefinitions.fs
index 65d694c9647..d1094604953 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/ModuleDefinitions/ModuleDefinitions.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/ModuleDefinitions/ModuleDefinitions.fs
@@ -244,6 +244,7 @@ module ModuleDefinitions =
let ``Production_OCamlCompat_fsx`` compilation =
compilation
|> withOcamlCompat
+ |> withLangVersion50
|> verifyCompileAndRun
|> shouldSucceed
@@ -271,13 +272,13 @@ module ModuleDefinitions =
|> verifyCompile
|> shouldFail
|> withDiagnostics [
- (Warning 62, Line 14, Col 13, Line 14, Col 19, "This construct is for ML compatibility. The syntax 'module ... = struct .. end' is not used in F# code. Consider using 'module ... = begin .. end'. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'.")
- (Warning 62, Line 18, Col 13, Line 18, Col 19, "This construct is for ML compatibility. The syntax 'module ... = struct .. end' is not used in F# code. Consider using 'module ... = begin .. end'. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'.")
- (Warning 62, Line 22, Col 13, Line 22, Col 19, "This construct is for ML compatibility. The syntax 'module ... = struct .. end' is not used in F# code. Consider using 'module ... = begin .. end'. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'.")
- (Warning 62, Line 26, Col 13, Line 26, Col 19, "This construct is for ML compatibility. The syntax 'module ... = struct .. end' is not used in F# code. Consider using 'module ... = begin .. end'. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'.")
- (Warning 62, Line 30, Col 13, Line 30, Col 19, "This construct is for ML compatibility. The syntax 'module ... = struct .. end' is not used in F# code. Consider using 'module ... = begin .. end'. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'.")
- (Warning 62, Line 35, Col 13, Line 35, Col 19, "This construct is for ML compatibility. The syntax 'module ... = struct .. end' is not used in F# code. Consider using 'module ... = begin .. end'. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'.")
- (Warning 62, Line 39, Col 13, Line 39, Col 19, "This construct is for ML compatibility. The syntax 'module ... = struct .. end' is not used in F# code. Consider using 'module ... = begin .. end'. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'.")
+ (Error 62, Line 14, Col 13, Line 14, Col 19, "This construct is deprecated. The use of 'module M = struct ... end ' was deprecated in F# 2.0 and is no longer supported. Remove the 'struct' and 'end' and use indentation instead. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.")
+ (Error 62, Line 18, Col 13, Line 18, Col 19, "This construct is deprecated. The use of 'module M = struct ... end ' was deprecated in F# 2.0 and is no longer supported. Remove the 'struct' and 'end' and use indentation instead. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.")
+ (Error 62, Line 22, Col 13, Line 22, Col 19, "This construct is deprecated. The use of 'module M = struct ... end ' was deprecated in F# 2.0 and is no longer supported. Remove the 'struct' and 'end' and use indentation instead. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.")
+ (Error 62, Line 26, Col 13, Line 26, Col 19, "This construct is deprecated. The use of 'module M = struct ... end ' was deprecated in F# 2.0 and is no longer supported. Remove the 'struct' and 'end' and use indentation instead. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.")
+ (Error 62, Line 30, Col 13, Line 30, Col 19, "This construct is deprecated. The use of 'module M = struct ... end ' was deprecated in F# 2.0 and is no longer supported. Remove the 'struct' and 'end' and use indentation instead. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.")
+ (Error 62, Line 35, Col 13, Line 35, Col 19, "This construct is deprecated. The use of 'module M = struct ... end ' was deprecated in F# 2.0 and is no longer supported. Remove the 'struct' and 'end' and use indentation instead. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.")
+ (Error 62, Line 39, Col 13, Line 39, Col 19, "This construct is deprecated. The use of 'module M = struct ... end ' was deprecated in F# 2.0 and is no longer supported. Remove the 'struct' and 'end' and use indentation instead. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.")
]
//
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/UseBindings/UseBindings.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/UseBindings/UseBindings.fs
index 1137add48d7..ab71a657e13 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/UseBindings/UseBindings.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/UseBindings/UseBindings.fs
@@ -12,7 +12,7 @@ module UseBindings =
let ``UseBindings - UseBindingDiscard01_fs - Current LangVersion`` compilation =
compilation
|> asFsx
- |> withOptions ["--langversion:preview"]
+ |> withLangVersion60
|> compile
|> shouldSucceed
|> ignore
@@ -57,6 +57,6 @@ if ctorCalls <> 1 then
"""
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion60
|> compileAndRun
|> shouldSucceed
\ No newline at end of file
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/RecursiveSafetyAnalysis/RecursiveSafetyAnalysis.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/RecursiveSafetyAnalysis/RecursiveSafetyAnalysis.fs
index e7e465a76d0..f75ee8440a2 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/RecursiveSafetyAnalysis/RecursiveSafetyAnalysis.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/RecursiveSafetyAnalysis/RecursiveSafetyAnalysis.fs
@@ -19,6 +19,7 @@ module RecursiveSafetyAnalysis =
let ``E_CyclicReference01_fs`` compilation =
compilation
|> withOptions ["--mlcompatibility"; "--flaterrors"]
+ |> withLangVersion50
|> asExe
|> compile
|> shouldFail
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicOperators.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicOperators.fs
index aa8cddcba33..20729626a3b 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicOperators.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicOperators.fs
@@ -39,7 +39,7 @@ module SymbolicOperators =
|> compile
|> shouldFail
|> withErrorCode 0670
- |> withDiagnosticMessageMatches " \^a\) could not be generalized because it would escape its scope"
+ |> withDiagnosticMessageMatches " 'a\) could not be generalized because it would escape its scope"
|> ignore
// This test was automatically generated (moved from FSharpQA suite - Conformance/LexicalAnalysis/SymbolicOperators)
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/OffsideExceptions/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/OffsideExceptions/OffsideExceptions.fs
index 8e9b6ae2cff..f00e227c826 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/OffsideExceptions/OffsideExceptions.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/OffsideExceptions/OffsideExceptions.fs
@@ -25,7 +25,7 @@ module OffsideExceptions =
let RelaxWhitespace2 compilation =
compilation
|> asFsx
- |> withLangVersionPreview
+ |> withLangVersion60
|> withOptions ["--nowarn:25"] // Incomplete pattern matches on this expression.
|> typecheck
|> shouldSucceed
@@ -35,7 +35,7 @@ module OffsideExceptions =
let RelaxWhitespace2_Warning25 compilation =
compilation
|> asFsx
- |> withLangVersionPreview
+ |> withLangVersion60
|> verifyBaseline
|> ignore
@@ -58,7 +58,7 @@ while (
true
) do ()
"""
- |> withLangVersionPreview
+ |> withLangVersion60
|> typecheck
|> shouldFail
|> withResults [
@@ -228,7 +228,7 @@ module [<
Experimental "c"
>] c = 1
"""
- |> withLangVersionPreview
+ |> withLangVersion60
|> typecheck
|> shouldSucceed
|> ignore
@@ -276,7 +276,7 @@ module A
y = 1
|}
"""
- |> withLangVersionPreview
+ |> withLangVersion60
|> typecheck
|> shouldFail
|> withResult {
@@ -328,7 +328,7 @@ module A
1
|}
"""
- |> withLangVersionPreview
+ |> withLangVersion60
|> typecheck
|> shouldFail
|> withResult {
@@ -5178,7 +5178,7 @@ match
| "" -> ""
| _ -> failwith ""
"""
- |> withLangVersionPreview
+ |> withLangVersion60
|> withOptions ["--nowarn:20"]
|> typecheck
|> shouldSucceed
@@ -5194,7 +5194,7 @@ try
with
| ex -> ex.Message
"""
- |> withLangVersionPreview
+ |> withLangVersion60
|> withOptions ["--nowarn:20"]
|> typecheck
|> shouldSucceed
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/PatternMatching/Simple.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/PatternMatching/Simple.fs
index 531da5e160c..2d7f884d746 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/PatternMatching/Simple.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/PatternMatching/Simple.fs
@@ -57,7 +57,7 @@ module Simple =
| _ -> failwith "Match failed"
"""
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion60
|> compileExeAndRun
|> shouldSucceed
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/IWSAMsAndSRTPs/IWSAMsAndSRTPsTests.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/IWSAMsAndSRTPs/IWSAMsAndSRTPsTests.fs
index 7ff2a44aaf1..9abba91ca2f 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/IWSAMsAndSRTPs/IWSAMsAndSRTPsTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/IWSAMsAndSRTPs/IWSAMsAndSRTPsTests.fs
@@ -9,13 +9,13 @@ open FSharp.Test.Compiler
let typesModule =
FSharp (loadSourceFromFile (Path.Combine(__SOURCE_DIRECTORY__, "Types.fs")))
|> withName "Types"
- |> withLangVersionPreview
+ |> withLangVersion70
|> withOptions ["--nowarn:3535"]
let setupCompilation compilation =
compilation
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [typesModule]
@@ -27,6 +27,7 @@ let setupCompilation compilation =
let ``IWSAM test files`` compilation =
compilation
|> setupCompilation
+ |> withLangVersionPreview
|> compileAndRun
|> shouldSucceed
@@ -67,7 +68,7 @@ let ``IWSAM test files`` compilation =
let ``Check static type parameter inference`` code expectedSignature =
FSharp code
|> ignoreWarnings
- |> withLangVersionPreview
+ |> withLangVersion70
|> signaturesShouldContain expectedSignature
@@ -311,7 +312,7 @@ module Negative =
|> ignore
Fsx code
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldFail
|> withErrorCode 3532
@@ -540,7 +541,7 @@ module ``Implicit conversion`` =
let add1 (x: int) = x + 1
"""
- |> withLangVersionPreview
+ |> withLangVersion70
|> withOptions ["--nowarn:3535"]
#if !NETCOREAPP
@@ -556,7 +557,7 @@ module ``Implicit conversion`` =
add1(a)
"""
|> withReferences [library]
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldFail
|> withDiagnosticMessageMatches "This expression was expected to have type\\s+'int'\\s+but here has type\\s+''T'"
@@ -574,7 +575,7 @@ module ``Implicit conversion`` =
C.TakeInt(a)
"""
|> withReferences [library]
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldFail
|> withDiagnosticMessageMatches "This expression was expected to have type\\s+'int'\\s+but here has type\\s+''T'"
@@ -592,7 +593,7 @@ module ``Implicit conversion`` =
add1(int(a))
"""
|> withReferences [library]
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldSucceed
@@ -609,7 +610,7 @@ module ``Implicit conversion`` =
C.TakeInt(int(a))
"""
|> withReferences [library]
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldSucceed
@@ -631,7 +632,7 @@ module ``Nominal type after or`` =
if not (callX "A" (C()) = "A OK") then
failwith "Unexpected result"
"""
- |> withLangVersionPreview
+ |> withLangVersion70
|> asExe
|> compileAndRun
|> shouldSucceed
@@ -645,7 +646,7 @@ module ``Nominal type after or`` =
let inline callX (x: 'T) (y: C) = ((C or ^T): (static member X : 'T * C -> string) (x, y));;
"""
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldFail
|> withDiagnosticMessageMatches "Unexpected keyword 'static' in binding"
@@ -670,7 +671,7 @@ module ``Nominal type after or`` =
if not (callX2 (C()) (D()) = "C") then
failwith "Unexpected result"
"""
- |> withLangVersionPreview
+ |> withLangVersion70
|> asExe
|> compileAndRun
|> shouldSucceed
@@ -694,7 +695,7 @@ module ``Active patterns`` =
static member IsGood c = false
static member op_Equality (a, b) = false
"""
- |> withLangVersionPreview
+ |> withLangVersion70
|> withName "Potato"
|> withOptions ["--nowarn:3535"]
@@ -715,7 +716,7 @@ module ``Active patterns`` =
match Rock() with GoodPotato -> failwith "Unexpected result" | _ -> ()
"""
|> withReferences [library]
- |> withLangVersionPreview
+ |> withLangVersion70
|> compileExeAndRun
|> shouldSucceed
|> verifyIL [
@@ -753,7 +754,7 @@ module ``Active patterns`` =
| IsNonEqual -> ()
"""
|> withReferences [library]
- |> withLangVersionPreview
+ |> withLangVersion70
|> asExe
|> compileAndRun
|> shouldSucceed
@@ -780,7 +781,7 @@ module ``Suppression of System Numerics interfaces on unitized types`` =
open System.Numerics
let f (x: 'T when 'T :> IMultiplyOperators<'T,'T,'T>) = x;;
f 3.0 |> ignore"""
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldSucceed
@@ -825,7 +826,7 @@ module ``Suppression of System Numerics interfaces on unitized types`` =
let f (x: 'T when {genericType}) = x;;
f 3.0 |> ignore"""
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldFail
|> withErrorMessage $"The type 'float' is not compatible with the type '{potatoType}'"
diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/UnionTypes/UnionTypes.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/UnionTypes/UnionTypes.fs
index 7c96b3ff713..b4c14f7b201 100644
--- a/tests/FSharp.Compiler.ComponentTests/Conformance/UnionTypes/UnionTypes.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Conformance/UnionTypes/UnionTypes.fs
@@ -60,8 +60,8 @@ module UnionTypes =
|> verifyCompile
|> shouldFail
|> withDiagnostics [
- (Error 53, Line 9, Col 12, Line 9, Col 13, "Discriminated union cases and exception labels must be uppercase identifiers")
- (Error 53, Line 10, Col 12, Line 10, Col 13, "Discriminated union cases and exception labels must be uppercase identifiers")
+ (Error 53, Line 9, Col 12, Line 9, Col 13, "Lowercase discriminated union cases are only allowed when using RequireQualifiedAccess attribute")
+ (Error 53, Line 10, Col 12, Line 10, Col 13, "Lowercase discriminated union cases are only allowed when using RequireQualifiedAccess attribute")
]
//SOURCE=E_BeginWithUppercase02.fsx SCFLAGS="--test:ErrorRanges" # E_BeginWithUppercase02.fsx
@@ -102,8 +102,8 @@ module UnionTypes =
|> shouldFail
|> withDiagnostics [
(Error 883, Line 7, Col 8, Line 7, Col 13, "Invalid namespace, module, type or union case name")
- (Error 53, Line 11, Col 18, Line 11, Col 19, "Discriminated union cases and exception labels must be uppercase identifiers")
- (Error 53, Line 12, Col 18, Line 12, Col 19, "Discriminated union cases and exception labels must be uppercase identifiers")
+ (Error 53, Line 11, Col 18, Line 11, Col 19, "Lowercase discriminated union cases are only allowed when using RequireQualifiedAccess attribute")
+ (Error 53, Line 12, Col 18, Line 12, Col 19, "Lowercase discriminated union cases are only allowed when using RequireQualifiedAccess attribute")
]
//SOURCE=E_GenericFunctionValuedStaticProp01.fs SCFLAGS="--test:ErrorRanges --warnaserror-" # E_GenericFunctionValuedStaticProp01.fs
@@ -205,7 +205,7 @@ module UnionTypes =
|> verifyCompile
|> shouldFail
|> withDiagnostics [
- (Error 53, Line 7, Col 13, Line 7, Col 17, "Discriminated union cases and exception labels must be uppercase identifiers")
+ (Error 53, Line 7, Col 13, Line 7, Col 17, "Lowercase discriminated union cases are only allowed when using RequireQualifiedAccess attribute")
]
//SOURCE=E_Overload_Equals.fs SCFLAGS="--test:ErrorRanges" # E_Overload_Equals.fs
@@ -471,6 +471,7 @@ module UnionTypes =
let ``SampleFromSpec01b_fsx`` compilation =
compilation
|> withOcamlCompat
+ |> withLangVersion50
|> verifyCompileAndRun
|> shouldSucceed
@@ -521,7 +522,7 @@ module UnionTypes =
[]
let ``LowercaseWhenRequireQualifiedAccess_fs in preview`` compilation =
compilation
- |> withLangVersionPreview
+ |> withLangVersion70
|> verifyCompileAndRun
|> shouldSucceed
@@ -529,7 +530,7 @@ module UnionTypes =
[]
let ``E_LowercaseWhenRequireQualifiedAccess_fs in preview`` compilation =
compilation
- |> withLangVersionPreview
+ |> withLangVersion70
|> verifyCompile
|> shouldFail
|> withDiagnostics [
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/SerializableAttribute.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/SerializableAttribute.fs
index d644b5c25c8..9f932fb436c 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/SerializableAttribute.fs
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/SerializableAttribute.fs
@@ -29,14 +29,14 @@ module SerializableAttribute =
compilation
|> verifyCompilation
- // SOURCE=ToplevelModule.fs SCFLAGS="-a -g --langversion:preview --out:TopLevelModule-preview.dll --test:EmitFeeFeeAs100001 --optimize-" COMPILE_ONLY=1 POSTCMD="..\\CompareIL.cmd ToplevelModule-preview.dll" # ToplevelModule.fs - Desktop preview
+ // SOURCE=ToplevelModule.fs SCFLAGS="-a -g --langversion:6.0 --out:TopLevelModule-preview.dll --test:EmitFeeFeeAs100001 --optimize-" COMPILE_ONLY=1 POSTCMD="..\\CompareIL.cmd ToplevelModule-preview.dll" # ToplevelModule.fs - Desktop preview
[]
let ``ToplevelModule_LangVersion60_fs`` compilation =
compilation
|> withLangVersion60
|> verifyCompilation
- // SOURCE=ToplevelNamespace.fs SCFLAGS="-a -g --langversion:preview --out:ToplevelNamespace-preview.dll --test:EmitFeeFeeAs100001 --optimize-" COMPILE_ONLY=1 POSTCMD="..\\CompareIL.cmd ToplevelNamespace-preview.dll" # ToplevelNamespace.fs - Desktop preview
+ // SOURCE=ToplevelNamespace.fs SCFLAGS="-a -g --langversion:6.0 --out:ToplevelNamespace-preview.dll --test:EmitFeeFeeAs100001 --optimize-" COMPILE_ONLY=1 POSTCMD="..\\CompareIL.cmd ToplevelNamespace-preview.dll" # ToplevelNamespace.fs - Desktop preview
[]
let ``ToplevelNamespace_LangVersion60_fs`` compilation =
compilation
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelModule.fs.il.debug.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelModule.fs.il.debug.bsl
index 59aa70ed458..fff55d0c477 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelModule.fs.il.debug.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelModule.fs.il.debug.bsl
@@ -4,15 +4,15 @@
// Metadata version: v4.0.30319
-.assembly extern System.Runtime
+.assembly extern mscorlib
{
- .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
- .ver 6:0:0:0
+ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
+ .ver 4:0:0:0
}
.assembly extern FSharp.Core
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
- .ver 6:0:0:0
+ .ver 7:0:0:0
}
.assembly ToplevelModule
{
@@ -21,52 +21,52 @@
int32) = ( 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 )
// --- The following custom attribute is added automatically, do not uncomment -------
- // .custom instance void [System.Runtime]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 03 01 00 00 00 00 )
+ // .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 01 01 00 00 00 00 )
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.mresource public FSharpSignatureData.ToplevelModule
{
- // Offset: 0x00000000 Length: 0x00001162
+ // Offset: 0x00000000 Length: 0x0000116C
// WARNING: managed resource file FSharpSignatureData.ToplevelModule created
}
.mresource public FSharpOptimizationData.ToplevelModule
{
- // Offset: 0x00001168 Length: 0x00000403
+ // Offset: 0x00001170 Length: 0x000003FD
// WARNING: managed resource file FSharpOptimizationData.ToplevelModule created
}
.module ToplevelModule.exe
-// MVID: {628F4C90-B9AE-2DE4-A745-0383904C8F62}
+// MVID: {62F987D1-3E21-F1E3-A745-0383D187F962}
.imagebase 0x00400000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003 // WINDOWS_CUI
.corflags 0x00000001 // ILONLY
-// Image base: 0x00000191AC370000
+// Image base: 0x000001EAC2450000
// =============== CLASS MEMBERS DECLARATION ===================
.class public abstract auto ansi sealed ABC
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 07 00 00 00 00 00 )
.class auto autochar serializable sealed nested public beforefieldinit Expr
- extends [System.Runtime]System.Object
- implements class [System.Runtime]System.IEquatable`1,
- [System.Runtime]System.Collections.IStructuralEquatable,
- class [System.Runtime]System.IComparable`1,
- [System.Runtime]System.IComparable,
- [System.Runtime]System.Collections.IStructuralComparable
+ extends [mscorlib]System.Object
+ implements class [mscorlib]System.IEquatable`1,
+ [mscorlib]System.Collections.IStructuralEquatable,
+ class [mscorlib]System.IComparable`1,
+ [mscorlib]System.IComparable,
+ [mscorlib]System.Collections.IStructuralComparable
{
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
- 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
+ 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 01 00 00 00 00 00 )
.field assembly initonly int32 item
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.method public static class ABC/Expr
NewNum(int32 item) cil managed
{
@@ -82,12 +82,12 @@
.method assembly specialname rtspecialname
instance void .ctor(int32 item) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 ABC/Expr::item
@@ -97,8 +97,8 @@
.method public hidebysig instance int32
get_Item() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
@@ -109,8 +109,8 @@
.method public hidebysig instance int32
get_Tag() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 4 (0x4)
.maxstack 8
IL_0000: ldarg.0
@@ -122,8 +122,8 @@
.method assembly hidebysig specialname
instance object __DebugDisplay() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+0.8A"
@@ -137,7 +137,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -151,16 +151,16 @@
.method public hidebysig virtual final
instance int32 CompareTo(class ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 66 (0x42)
.maxstack 5
.locals init (class ABC/Expr V_0,
class ABC/Expr V_1,
- class [System.Runtime]System.Collections.IComparer V_2,
+ class [mscorlib]System.Collections.IComparer V_2,
int32 V_3,
int32 V_4,
- class [System.Runtime]System.Collections.IComparer V_5,
+ class [mscorlib]System.Collections.IComparer V_5,
int32 V_6,
int32 V_7)
IL_0000: ldarg.0
@@ -175,7 +175,7 @@
IL_0009: stloc.0
IL_000a: ldarg.1
IL_000b: stloc.1
- IL_000c: call class [System.Runtime]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
+ IL_000c: call class [mscorlib]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
IL_0011: stloc.2
IL_0012: ldloc.0
IL_0013: ldfld int32 ABC/Expr::item
@@ -214,8 +214,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -227,19 +227,19 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj,
- class [System.Runtime]System.Collections.IComparer comp) cil managed
+ class [mscorlib]System.Collections.IComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 81 (0x51)
.maxstack 5
.locals init (class ABC/Expr V_0,
class ABC/Expr V_1,
class ABC/Expr V_2,
- class [System.Runtime]System.Collections.IComparer V_3,
+ class [mscorlib]System.Collections.IComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IComparer V_6,
+ class [mscorlib]System.Collections.IComparer V_6,
int32 V_7,
int32 V_8)
IL_0000: ldarg.1
@@ -296,17 +296,17 @@
} // end of method Expr::CompareTo
.method public hidebysig virtual final
- instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ instance int32 GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 43 (0x2b)
.maxstack 7
.locals init (int32 V_0,
class ABC/Expr V_1,
- class [System.Runtime]System.Collections.IEqualityComparer V_2,
+ class [mscorlib]System.Collections.IEqualityComparer V_2,
int32 V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4)
+ class [mscorlib]System.Collections.IEqualityComparer V_4)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0029
@@ -347,32 +347,32 @@
.method public hidebysig virtual final
instance int32 GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 ABC/Expr::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 ABC/Expr::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method Expr::GetHashCode
.method public hidebysig virtual final
instance bool Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 61 (0x3d)
.maxstack 4
.locals init (class ABC/Expr V_0,
class ABC/Expr V_1,
class ABC/Expr V_2,
class ABC/Expr V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4,
+ class [mscorlib]System.Collections.IEqualityComparer V_4,
int32 V_5,
int32 V_6,
- class [System.Runtime]System.Collections.IEqualityComparer V_7)
+ class [mscorlib]System.Collections.IEqualityComparer V_7)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0035
@@ -419,8 +419,8 @@
.method public hidebysig virtual final
instance bool Equals(class ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class ABC/Expr V_0,
@@ -458,8 +458,8 @@
.method public hidebysig virtual final
instance bool Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class ABC/Expr V_0)
@@ -480,9 +480,9 @@
.property instance int32 Tag()
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
.get instance int32 ABC/Expr::get_Tag()
} // end of property Expr::Tag
.property instance int32 Item()
@@ -490,15 +490,15 @@
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags,
int32,
int32) = ( 01 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.get instance int32 ABC/Expr::get_Item()
} // end of property Expr::Item
} // end of class Expr
.class auto ansi serializable nested public beforefieldinit MyExn
- extends [System.Runtime]System.Exception
- implements [System.Runtime]System.Collections.IStructuralEquatable
+ extends [mscorlib]System.Exception
+ implements [mscorlib]System.Collections.IStructuralEquatable
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 05 00 00 00 00 00 )
.field assembly int32 Data0@
@@ -508,7 +508,7 @@
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 ABC/MyExn::Data0@
@@ -521,21 +521,21 @@
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ret
} // end of method MyExn::.ctor
.method family specialname rtspecialname
- instance void .ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo info,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext context) cil managed
+ instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed
{
// Code size 9 (0x9)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldarg.1
IL_0002: ldarg.2
- IL_0003: call instance void [System.Runtime]System.Exception::.ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext)
+ IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext)
IL_0008: ret
} // end of method MyExn::.ctor
@@ -549,17 +549,31 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class ABC/MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
- GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 41 (0x29)
.maxstack 7
.locals init (int32 V_0,
- class [System.Runtime]System.Collections.IEqualityComparer V_1,
+ class [mscorlib]System.Collections.IEqualityComparer V_1,
int32 V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3)
+ class [mscorlib]System.Collections.IEqualityComparer V_3)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0027
@@ -595,36 +609,36 @@
.method public hidebysig virtual instance int32
GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 ABC/MyExn::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 ABC/MyExn::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method MyExn::GetHashCode
.method public hidebysig virtual instance bool
Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 78 (0x4e)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0,
- class [System.Runtime]System.Exception V_1,
+ .locals init (class [mscorlib]System.Exception V_0,
+ class [mscorlib]System.Exception V_1,
object V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3,
+ class [mscorlib]System.Collections.IEqualityComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IEqualityComparer V_6)
+ class [mscorlib]System.Collections.IEqualityComparer V_6)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0046
IL_0003: ldarg.1
- IL_0004: isinst [System.Runtime]System.Exception
+ IL_0004: isinst [mscorlib]System.Exception
IL_0009: stloc.0
IL_000a: ldloc.0
IL_000b: brfalse.s IL_0044
@@ -671,10 +685,10 @@
} // end of method MyExn::Equals
.method public hidebysig instance bool
- Equals(class [System.Runtime]System.Exception obj) cil managed
+ Equals(class [mscorlib]System.Exception obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -718,20 +732,20 @@
.method public hidebysig virtual instance bool
Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0)
+ .locals init (class [mscorlib]System.Exception V_0)
IL_0000: ldarg.1
- IL_0001: isinst [System.Runtime]System.Exception
+ IL_0001: isinst [mscorlib]System.Exception
IL_0006: stloc.0
IL_0007: ldloc.0
IL_0008: brfalse.s IL_0012
IL_000a: ldarg.0
IL_000b: ldloc.0
- IL_000c: callvirt instance bool ABC/MyExn::Equals(class [System.Runtime]System.Exception)
+ IL_000c: callvirt instance bool ABC/MyExn::Equals(class [mscorlib]System.Exception)
IL_0011: ret
IL_0012: ldc.i4.0
@@ -747,7 +761,7 @@
} // end of class MyExn
.class auto ansi serializable nested public A
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.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 )
.field assembly string x
@@ -757,7 +771,7 @@
// Code size 16 (0x10)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: callvirt instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: callvirt instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: pop
IL_0008: ldarg.0
@@ -783,24 +797,24 @@
} // end of class A
.class abstract auto ansi sealed nested public ABC
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 07 00 00 00 00 00 )
.class auto autochar serializable sealed nested public beforefieldinit Expr
- extends [System.Runtime]System.Object
- implements class [System.Runtime]System.IEquatable`1,
- [System.Runtime]System.Collections.IStructuralEquatable,
- class [System.Runtime]System.IComparable`1,
- [System.Runtime]System.IComparable,
- [System.Runtime]System.Collections.IStructuralComparable
+ extends [mscorlib]System.Object
+ implements class [mscorlib]System.IEquatable`1,
+ [mscorlib]System.Collections.IStructuralEquatable,
+ class [mscorlib]System.IComparable`1,
+ [mscorlib]System.IComparable,
+ [mscorlib]System.Collections.IStructuralComparable
{
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
- 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
+ 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 01 00 00 00 00 00 )
.field assembly initonly int32 item
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.method public static class ABC/ABC/Expr
NewNum(int32 item) cil managed
{
@@ -816,12 +830,12 @@
.method assembly specialname rtspecialname
instance void .ctor(int32 item) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 ABC/ABC/Expr::item
@@ -831,8 +845,8 @@
.method public hidebysig instance int32
get_Item() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
@@ -843,8 +857,8 @@
.method public hidebysig instance int32
get_Tag() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 4 (0x4)
.maxstack 8
IL_0000: ldarg.0
@@ -856,8 +870,8 @@
.method assembly hidebysig specialname
instance object __DebugDisplay() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+0.8A"
@@ -871,7 +885,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -885,16 +899,16 @@
.method public hidebysig virtual final
instance int32 CompareTo(class ABC/ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 66 (0x42)
.maxstack 5
.locals init (class ABC/ABC/Expr V_0,
class ABC/ABC/Expr V_1,
- class [System.Runtime]System.Collections.IComparer V_2,
+ class [mscorlib]System.Collections.IComparer V_2,
int32 V_3,
int32 V_4,
- class [System.Runtime]System.Collections.IComparer V_5,
+ class [mscorlib]System.Collections.IComparer V_5,
int32 V_6,
int32 V_7)
IL_0000: ldarg.0
@@ -909,7 +923,7 @@
IL_0009: stloc.0
IL_000a: ldarg.1
IL_000b: stloc.1
- IL_000c: call class [System.Runtime]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
+ IL_000c: call class [mscorlib]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
IL_0011: stloc.2
IL_0012: ldloc.0
IL_0013: ldfld int32 ABC/ABC/Expr::item
@@ -948,8 +962,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -961,19 +975,19 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj,
- class [System.Runtime]System.Collections.IComparer comp) cil managed
+ class [mscorlib]System.Collections.IComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 81 (0x51)
.maxstack 5
.locals init (class ABC/ABC/Expr V_0,
class ABC/ABC/Expr V_1,
class ABC/ABC/Expr V_2,
- class [System.Runtime]System.Collections.IComparer V_3,
+ class [mscorlib]System.Collections.IComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IComparer V_6,
+ class [mscorlib]System.Collections.IComparer V_6,
int32 V_7,
int32 V_8)
IL_0000: ldarg.1
@@ -1030,17 +1044,17 @@
} // end of method Expr::CompareTo
.method public hidebysig virtual final
- instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ instance int32 GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 43 (0x2b)
.maxstack 7
.locals init (int32 V_0,
class ABC/ABC/Expr V_1,
- class [System.Runtime]System.Collections.IEqualityComparer V_2,
+ class [mscorlib]System.Collections.IEqualityComparer V_2,
int32 V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4)
+ class [mscorlib]System.Collections.IEqualityComparer V_4)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0029
@@ -1081,32 +1095,32 @@
.method public hidebysig virtual final
instance int32 GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 ABC/ABC/Expr::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 ABC/ABC/Expr::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method Expr::GetHashCode
.method public hidebysig virtual final
instance bool Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 61 (0x3d)
.maxstack 4
.locals init (class ABC/ABC/Expr V_0,
class ABC/ABC/Expr V_1,
class ABC/ABC/Expr V_2,
class ABC/ABC/Expr V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4,
+ class [mscorlib]System.Collections.IEqualityComparer V_4,
int32 V_5,
int32 V_6,
- class [System.Runtime]System.Collections.IEqualityComparer V_7)
+ class [mscorlib]System.Collections.IEqualityComparer V_7)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0035
@@ -1153,8 +1167,8 @@
.method public hidebysig virtual final
instance bool Equals(class ABC/ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class ABC/ABC/Expr V_0,
@@ -1192,8 +1206,8 @@
.method public hidebysig virtual final
instance bool Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class ABC/ABC/Expr V_0)
@@ -1214,9 +1228,9 @@
.property instance int32 Tag()
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
.get instance int32 ABC/ABC/Expr::get_Tag()
} // end of property Expr::Tag
.property instance int32 Item()
@@ -1224,15 +1238,15 @@
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags,
int32,
int32) = ( 01 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.get instance int32 ABC/ABC/Expr::get_Item()
} // end of property Expr::Item
} // end of class Expr
.class auto ansi serializable nested public beforefieldinit MyExn
- extends [System.Runtime]System.Exception
- implements [System.Runtime]System.Collections.IStructuralEquatable
+ extends [mscorlib]System.Exception
+ implements [mscorlib]System.Collections.IStructuralEquatable
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 05 00 00 00 00 00 )
.field assembly int32 Data0@
@@ -1242,7 +1256,7 @@
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 ABC/ABC/MyExn::Data0@
@@ -1255,21 +1269,21 @@
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ret
} // end of method MyExn::.ctor
.method family specialname rtspecialname
- instance void .ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo info,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext context) cil managed
+ instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed
{
// Code size 9 (0x9)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldarg.1
IL_0002: ldarg.2
- IL_0003: call instance void [System.Runtime]System.Exception::.ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext)
+ IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext)
IL_0008: ret
} // end of method MyExn::.ctor
@@ -1283,17 +1297,31 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class ABC/ABC/MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
- GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 41 (0x29)
.maxstack 7
.locals init (int32 V_0,
- class [System.Runtime]System.Collections.IEqualityComparer V_1,
+ class [mscorlib]System.Collections.IEqualityComparer V_1,
int32 V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3)
+ class [mscorlib]System.Collections.IEqualityComparer V_3)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0027
@@ -1329,36 +1357,36 @@
.method public hidebysig virtual instance int32
GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 ABC/ABC/MyExn::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 ABC/ABC/MyExn::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method MyExn::GetHashCode
.method public hidebysig virtual instance bool
Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 78 (0x4e)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0,
- class [System.Runtime]System.Exception V_1,
+ .locals init (class [mscorlib]System.Exception V_0,
+ class [mscorlib]System.Exception V_1,
object V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3,
+ class [mscorlib]System.Collections.IEqualityComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IEqualityComparer V_6)
+ class [mscorlib]System.Collections.IEqualityComparer V_6)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0046
IL_0003: ldarg.1
- IL_0004: isinst [System.Runtime]System.Exception
+ IL_0004: isinst [mscorlib]System.Exception
IL_0009: stloc.0
IL_000a: ldloc.0
IL_000b: brfalse.s IL_0044
@@ -1405,10 +1433,10 @@
} // end of method MyExn::Equals
.method public hidebysig instance bool
- Equals(class [System.Runtime]System.Exception obj) cil managed
+ Equals(class [mscorlib]System.Exception obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -1452,20 +1480,20 @@
.method public hidebysig virtual instance bool
Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0)
+ .locals init (class [mscorlib]System.Exception V_0)
IL_0000: ldarg.1
- IL_0001: isinst [System.Runtime]System.Exception
+ IL_0001: isinst [mscorlib]System.Exception
IL_0006: stloc.0
IL_0007: ldloc.0
IL_0008: brfalse.s IL_0012
IL_000a: ldarg.0
IL_000b: ldloc.0
- IL_000c: callvirt instance bool ABC/ABC/MyExn::Equals(class [System.Runtime]System.Exception)
+ IL_000c: callvirt instance bool ABC/ABC/MyExn::Equals(class [mscorlib]System.Exception)
IL_0011: ret
IL_0012: ldc.i4.0
@@ -1481,7 +1509,7 @@
} // end of class MyExn
.class auto ansi serializable nested public A
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.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 )
.field assembly string x
@@ -1491,7 +1519,7 @@
// Code size 16 (0x10)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: callvirt instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: callvirt instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: pop
IL_0008: ldarg.0
@@ -1531,8 +1559,8 @@
.method public specialname static string
get_greeting() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldstr "hello"
@@ -1560,8 +1588,8 @@
.method public specialname static string
get_greeting() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldstr "hello"
@@ -1575,12 +1603,12 @@
} // end of class ABC
.class private abstract auto ansi sealed ''.$ABC
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.field static assembly int32 init@
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.method public static void main@() cil managed
{
.entrypoint
@@ -1601,4 +1629,4 @@
// =============================================================
// *********** DISASSEMBLY COMPLETE ***********************
-// WARNING: Created Win32 resource file C:\dev\fsharp\artifacts\bin\FSharp.Compiler.ComponentTests\Debug\net6.0\tests\EmittedIL\SerializableAttribute\ToplevelModule_fs\ToplevelModule.res
+// WARNING: Created Win32 resource file C:\kevinransom\fsharp\artifacts\bin\FSharp.Compiler.ComponentTests\Debug\net472\tests\EmittedIL\SerializableAttribute\ToplevelModule_fs\ToplevelModule.res
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelModule.fs.il.release.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelModule.fs.il.release.bsl
index 14c1385f00b..39e909e6bd1 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelModule.fs.il.release.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelModule.fs.il.release.bsl
@@ -12,7 +12,7 @@
.assembly extern FSharp.Core
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
- .ver 6:0:0:0
+ .ver 7:0:0:0
}
.assembly ToplevelModule
{
@@ -21,29 +21,29 @@
int32) = ( 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 )
// --- The following custom attribute is added automatically, do not uncomment -------
- // .custom instance void [System.Runtime]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 03 01 00 00 00 00 )
+ // .custom instance void [System.Runtime]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 01 01 00 00 00 00 )
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.mresource public FSharpSignatureData.ToplevelModule
{
- // Offset: 0x00000000 Length: 0x00001180
+ // Offset: 0x00000000 Length: 0x00001176
// WARNING: managed resource file FSharpSignatureData.ToplevelModule created
}
.mresource public FSharpOptimizationData.ToplevelModule
{
- // Offset: 0x00001188 Length: 0x00000403
+ // Offset: 0x00001180 Length: 0x00000403
// WARNING: managed resource file FSharpOptimizationData.ToplevelModule created
}
.module ToplevelModule.exe
-// MVID: {628FBBC7-604B-50A5-A745-0383C7BB8F62}
+// MVID: {62F9A1C8-0BC0-6650-A745-0383C8A1F962}
.imagebase 0x00400000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003 // WINDOWS_CUI
.corflags 0x00000001 // ILONLY
-// Image base: 0x00000192020C0000
+// Image base: 0x00000223111B0000
// =============== CLASS MEMBERS DECLARATION ===================
@@ -137,7 +137,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -151,8 +151,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(class ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 54 (0x36)
.maxstack 5
.locals init (class ABC/Expr V_0,
@@ -205,8 +205,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -220,8 +220,8 @@
instance int32 CompareTo(object obj,
class [System.Runtime]System.Collections.IComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 70 (0x46)
.maxstack 5
.locals init (class ABC/Expr V_0,
@@ -280,8 +280,8 @@
.method public hidebysig virtual final
instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 38 (0x26)
.maxstack 7
.locals init (int32 V_0,
@@ -323,8 +323,8 @@
.method public hidebysig virtual final
instance int32 GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -337,8 +337,8 @@
instance bool Equals(object obj,
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 49 (0x31)
.maxstack 4
.locals init (class ABC/Expr V_0,
@@ -386,8 +386,8 @@
.method public hidebysig virtual final
instance bool Equals(class ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class ABC/Expr V_0,
@@ -425,8 +425,8 @@
.method public hidebysig virtual final
instance bool Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class ABC/Expr V_0)
@@ -516,11 +516,25 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class ABC/MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 7
.locals init (int32 V_0,
@@ -556,8 +570,8 @@
.method public hidebysig virtual instance int32
GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -570,8 +584,8 @@
Equals(object obj,
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 67 (0x43)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0,
@@ -625,8 +639,8 @@
.method public hidebysig instance bool
Equals(class [System.Runtime]System.Exception obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -670,8 +684,8 @@
.method public hidebysig virtual instance bool
Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0)
@@ -823,7 +837,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -838,7 +852,7 @@
instance int32 CompareTo(class ABC/ABC/Expr obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 54 (0x36)
.maxstack 5
.locals init (class ABC/ABC/Expr V_0,
@@ -892,7 +906,7 @@
instance int32 CompareTo(object obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -907,7 +921,7 @@
class [System.Runtime]System.Collections.IComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 70 (0x46)
.maxstack 5
.locals init (class ABC/ABC/Expr V_0,
@@ -967,7 +981,7 @@
instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 38 (0x26)
.maxstack 7
.locals init (int32 V_0,
@@ -1010,7 +1024,7 @@
instance int32 GetHashCode() cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -1024,7 +1038,7 @@
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 49 (0x31)
.maxstack 4
.locals init (class ABC/ABC/Expr V_0,
@@ -1073,7 +1087,7 @@
instance bool Equals(class ABC/ABC/Expr obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class ABC/ABC/Expr V_0,
@@ -1112,7 +1126,7 @@
instance bool Equals(object obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class ABC/ABC/Expr V_0)
@@ -1202,11 +1216,25 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class ABC/ABC/MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 7
.locals init (int32 V_0,
@@ -1243,7 +1271,7 @@
GetHashCode() cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -1257,7 +1285,7 @@
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 67 (0x43)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0,
@@ -1312,7 +1340,7 @@
Equals(class [System.Runtime]System.Exception obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -1357,7 +1385,7 @@
Equals(object obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0)
@@ -1505,4 +1533,4 @@
// =============================================================
// *********** DISASSEMBLY COMPLETE ***********************
-// WARNING: Created Win32 resource file C:\Users\vzari\code\fsharp\artifacts\bin\FSharp.Compiler.ComponentTests\Release\net6.0\tests\EmittedIL\SerializableAttribute\ToplevelModule_fs\ToplevelModule.res
+// WARNING: Created Win32 resource file C:\kevinransom\fsharp\artifacts\bin\FSharp.Compiler.ComponentTests\Release\net6.0\tests\EmittedIL\SerializableAttribute\ToplevelModule_fs\ToplevelModule.res
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelNamespace.fs.il.debug.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelNamespace.fs.il.debug.bsl
index 090e268304a..d58ef674a36 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelNamespace.fs.il.debug.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelNamespace.fs.il.debug.bsl
@@ -4,15 +4,15 @@
// Metadata version: v4.0.30319
-.assembly extern System.Runtime
+.assembly extern mscorlib
{
- .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
- .ver 6:0:0:0
+ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
+ .ver 4:0:0:0
}
.assembly extern FSharp.Core
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
- .ver 6:0:0:0
+ .ver 7:0:0:0
}
.assembly ToplevelNamespace
{
@@ -21,48 +21,48 @@
int32) = ( 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 )
// --- The following custom attribute is added automatically, do not uncomment -------
- // .custom instance void [System.Runtime]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 03 01 00 00 00 00 )
+ // .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 01 01 00 00 00 00 )
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.mresource public FSharpSignatureData.ToplevelNamespace
{
- // Offset: 0x00000000 Length: 0x00001870
+ // Offset: 0x00000000 Length: 0x0000187A
// WARNING: managed resource file FSharpSignatureData.ToplevelNamespace created
}
.mresource public FSharpOptimizationData.ToplevelNamespace
{
- // Offset: 0x00001878 Length: 0x00000562
+ // Offset: 0x00001880 Length: 0x0000055C
// WARNING: managed resource file FSharpOptimizationData.ToplevelNamespace created
}
.module ToplevelNamespace.exe
-// MVID: {628F4C90-5D8B-1F9F-A745-0383904C8F62}
+// MVID: {62F98081-3EC6-FDC1-A745-03838180F962}
.imagebase 0x00400000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003 // WINDOWS_CUI
.corflags 0x00000001 // ILONLY
-// Image base: 0x000002285D250000
+// Image base: 0x000001C2AAA90000
// =============== CLASS MEMBERS DECLARATION ===================
.class public auto autochar serializable sealed beforefieldinit XYZ.Expr
- extends [System.Runtime]System.Object
- implements class [System.Runtime]System.IEquatable`1,
- [System.Runtime]System.Collections.IStructuralEquatable,
- class [System.Runtime]System.IComparable`1,
- [System.Runtime]System.IComparable,
- [System.Runtime]System.Collections.IStructuralComparable
+ extends [mscorlib]System.Object
+ implements class [mscorlib]System.IEquatable`1,
+ [mscorlib]System.Collections.IStructuralEquatable,
+ class [mscorlib]System.IComparable`1,
+ [mscorlib]System.IComparable,
+ [mscorlib]System.Collections.IStructuralComparable
{
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
- 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
+ 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 01 00 00 00 00 00 )
.field assembly initonly int32 item
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.method public static class XYZ.Expr NewNum(int32 item) cil managed
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags,
@@ -77,12 +77,12 @@
.method assembly specialname rtspecialname
instance void .ctor(int32 item) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 XYZ.Expr::item
@@ -92,8 +92,8 @@
.method public hidebysig instance int32
get_Item() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
@@ -104,8 +104,8 @@
.method public hidebysig instance int32
get_Tag() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 4 (0x4)
.maxstack 8
IL_0000: ldarg.0
@@ -117,8 +117,8 @@
.method assembly hidebysig specialname
instance object __DebugDisplay() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+0.8A"
@@ -132,7 +132,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -146,16 +146,16 @@
.method public hidebysig virtual final
instance int32 CompareTo(class XYZ.Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 66 (0x42)
.maxstack 5
.locals init (class XYZ.Expr V_0,
class XYZ.Expr V_1,
- class [System.Runtime]System.Collections.IComparer V_2,
+ class [mscorlib]System.Collections.IComparer V_2,
int32 V_3,
int32 V_4,
- class [System.Runtime]System.Collections.IComparer V_5,
+ class [mscorlib]System.Collections.IComparer V_5,
int32 V_6,
int32 V_7)
IL_0000: ldarg.0
@@ -170,7 +170,7 @@
IL_0009: stloc.0
IL_000a: ldarg.1
IL_000b: stloc.1
- IL_000c: call class [System.Runtime]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
+ IL_000c: call class [mscorlib]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
IL_0011: stloc.2
IL_0012: ldloc.0
IL_0013: ldfld int32 XYZ.Expr::item
@@ -209,8 +209,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -222,19 +222,19 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj,
- class [System.Runtime]System.Collections.IComparer comp) cil managed
+ class [mscorlib]System.Collections.IComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 81 (0x51)
.maxstack 5
.locals init (class XYZ.Expr V_0,
class XYZ.Expr V_1,
class XYZ.Expr V_2,
- class [System.Runtime]System.Collections.IComparer V_3,
+ class [mscorlib]System.Collections.IComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IComparer V_6,
+ class [mscorlib]System.Collections.IComparer V_6,
int32 V_7,
int32 V_8)
IL_0000: ldarg.1
@@ -291,17 +291,17 @@
} // end of method Expr::CompareTo
.method public hidebysig virtual final
- instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ instance int32 GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 43 (0x2b)
.maxstack 7
.locals init (int32 V_0,
class XYZ.Expr V_1,
- class [System.Runtime]System.Collections.IEqualityComparer V_2,
+ class [mscorlib]System.Collections.IEqualityComparer V_2,
int32 V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4)
+ class [mscorlib]System.Collections.IEqualityComparer V_4)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0029
@@ -342,32 +342,32 @@
.method public hidebysig virtual final
instance int32 GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 XYZ.Expr::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 XYZ.Expr::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method Expr::GetHashCode
.method public hidebysig virtual final
instance bool Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 61 (0x3d)
.maxstack 4
.locals init (class XYZ.Expr V_0,
class XYZ.Expr V_1,
class XYZ.Expr V_2,
class XYZ.Expr V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4,
+ class [mscorlib]System.Collections.IEqualityComparer V_4,
int32 V_5,
int32 V_6,
- class [System.Runtime]System.Collections.IEqualityComparer V_7)
+ class [mscorlib]System.Collections.IEqualityComparer V_7)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0035
@@ -414,8 +414,8 @@
.method public hidebysig virtual final
instance bool Equals(class XYZ.Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class XYZ.Expr V_0,
@@ -453,8 +453,8 @@
.method public hidebysig virtual final
instance bool Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class XYZ.Expr V_0)
@@ -475,9 +475,9 @@
.property instance int32 Tag()
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
.get instance int32 XYZ.Expr::get_Tag()
} // end of property Expr::Tag
.property instance int32 Item()
@@ -485,15 +485,15 @@
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags,
int32,
int32) = ( 01 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.get instance int32 XYZ.Expr::get_Item()
} // end of property Expr::Item
} // end of class XYZ.Expr
.class public auto ansi serializable beforefieldinit XYZ.MyExn
- extends [System.Runtime]System.Exception
- implements [System.Runtime]System.Collections.IStructuralEquatable
+ extends [mscorlib]System.Exception
+ implements [mscorlib]System.Collections.IStructuralEquatable
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 05 00 00 00 00 00 )
.field assembly int32 Data0@
@@ -503,7 +503,7 @@
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 XYZ.MyExn::Data0@
@@ -516,21 +516,21 @@
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ret
} // end of method MyExn::.ctor
.method family specialname rtspecialname
- instance void .ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo info,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext context) cil managed
+ instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed
{
// Code size 9 (0x9)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldarg.1
IL_0002: ldarg.2
- IL_0003: call instance void [System.Runtime]System.Exception::.ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext)
+ IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext)
IL_0008: ret
} // end of method MyExn::.ctor
@@ -544,17 +544,31 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class XYZ.MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
- GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 41 (0x29)
.maxstack 7
.locals init (int32 V_0,
- class [System.Runtime]System.Collections.IEqualityComparer V_1,
+ class [mscorlib]System.Collections.IEqualityComparer V_1,
int32 V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3)
+ class [mscorlib]System.Collections.IEqualityComparer V_3)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0027
@@ -590,36 +604,36 @@
.method public hidebysig virtual instance int32
GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 XYZ.MyExn::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 XYZ.MyExn::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method MyExn::GetHashCode
.method public hidebysig virtual instance bool
Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 78 (0x4e)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0,
- class [System.Runtime]System.Exception V_1,
+ .locals init (class [mscorlib]System.Exception V_0,
+ class [mscorlib]System.Exception V_1,
object V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3,
+ class [mscorlib]System.Collections.IEqualityComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IEqualityComparer V_6)
+ class [mscorlib]System.Collections.IEqualityComparer V_6)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0046
IL_0003: ldarg.1
- IL_0004: isinst [System.Runtime]System.Exception
+ IL_0004: isinst [mscorlib]System.Exception
IL_0009: stloc.0
IL_000a: ldloc.0
IL_000b: brfalse.s IL_0044
@@ -666,10 +680,10 @@
} // end of method MyExn::Equals
.method public hidebysig instance bool
- Equals(class [System.Runtime]System.Exception obj) cil managed
+ Equals(class [mscorlib]System.Exception obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -713,20 +727,20 @@
.method public hidebysig virtual instance bool
Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0)
+ .locals init (class [mscorlib]System.Exception V_0)
IL_0000: ldarg.1
- IL_0001: isinst [System.Runtime]System.Exception
+ IL_0001: isinst [mscorlib]System.Exception
IL_0006: stloc.0
IL_0007: ldloc.0
IL_0008: brfalse.s IL_0012
IL_000a: ldarg.0
IL_000b: ldloc.0
- IL_000c: callvirt instance bool XYZ.MyExn::Equals(class [System.Runtime]System.Exception)
+ IL_000c: callvirt instance bool XYZ.MyExn::Equals(class [mscorlib]System.Exception)
IL_0011: ret
IL_0012: ldc.i4.0
@@ -742,7 +756,7 @@
} // end of class XYZ.MyExn
.class public auto ansi serializable XYZ.A
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.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 )
.field assembly string x
@@ -752,7 +766,7 @@
// Code size 16 (0x10)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: callvirt instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: callvirt instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: pop
IL_0008: ldarg.0
@@ -778,24 +792,24 @@
} // end of class XYZ.A
.class public abstract auto ansi sealed XYZ.ABC
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 07 00 00 00 00 00 )
.class auto autochar serializable sealed nested public beforefieldinit Expr
- extends [System.Runtime]System.Object
- implements class [System.Runtime]System.IEquatable`1,
- [System.Runtime]System.Collections.IStructuralEquatable,
- class [System.Runtime]System.IComparable`1,
- [System.Runtime]System.IComparable,
- [System.Runtime]System.Collections.IStructuralComparable
+ extends [mscorlib]System.Object
+ implements class [mscorlib]System.IEquatable`1,
+ [mscorlib]System.Collections.IStructuralEquatable,
+ class [mscorlib]System.IComparable`1,
+ [mscorlib]System.IComparable,
+ [mscorlib]System.Collections.IStructuralComparable
{
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
- 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
+ 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 01 00 00 00 00 00 )
.field assembly initonly int32 item
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.method public static class XYZ.ABC/Expr
NewNum(int32 item) cil managed
{
@@ -811,12 +825,12 @@
.method assembly specialname rtspecialname
instance void .ctor(int32 item) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 XYZ.ABC/Expr::item
@@ -826,8 +840,8 @@
.method public hidebysig instance int32
get_Item() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
@@ -838,8 +852,8 @@
.method public hidebysig instance int32
get_Tag() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 4 (0x4)
.maxstack 8
IL_0000: ldarg.0
@@ -851,8 +865,8 @@
.method assembly hidebysig specialname
instance object __DebugDisplay() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+0.8A"
@@ -866,7 +880,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -880,16 +894,16 @@
.method public hidebysig virtual final
instance int32 CompareTo(class XYZ.ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 66 (0x42)
.maxstack 5
.locals init (class XYZ.ABC/Expr V_0,
class XYZ.ABC/Expr V_1,
- class [System.Runtime]System.Collections.IComparer V_2,
+ class [mscorlib]System.Collections.IComparer V_2,
int32 V_3,
int32 V_4,
- class [System.Runtime]System.Collections.IComparer V_5,
+ class [mscorlib]System.Collections.IComparer V_5,
int32 V_6,
int32 V_7)
IL_0000: ldarg.0
@@ -904,7 +918,7 @@
IL_0009: stloc.0
IL_000a: ldarg.1
IL_000b: stloc.1
- IL_000c: call class [System.Runtime]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
+ IL_000c: call class [mscorlib]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
IL_0011: stloc.2
IL_0012: ldloc.0
IL_0013: ldfld int32 XYZ.ABC/Expr::item
@@ -943,8 +957,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -956,19 +970,19 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj,
- class [System.Runtime]System.Collections.IComparer comp) cil managed
+ class [mscorlib]System.Collections.IComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 81 (0x51)
.maxstack 5
.locals init (class XYZ.ABC/Expr V_0,
class XYZ.ABC/Expr V_1,
class XYZ.ABC/Expr V_2,
- class [System.Runtime]System.Collections.IComparer V_3,
+ class [mscorlib]System.Collections.IComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IComparer V_6,
+ class [mscorlib]System.Collections.IComparer V_6,
int32 V_7,
int32 V_8)
IL_0000: ldarg.1
@@ -1025,17 +1039,17 @@
} // end of method Expr::CompareTo
.method public hidebysig virtual final
- instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ instance int32 GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 43 (0x2b)
.maxstack 7
.locals init (int32 V_0,
class XYZ.ABC/Expr V_1,
- class [System.Runtime]System.Collections.IEqualityComparer V_2,
+ class [mscorlib]System.Collections.IEqualityComparer V_2,
int32 V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4)
+ class [mscorlib]System.Collections.IEqualityComparer V_4)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0029
@@ -1076,32 +1090,32 @@
.method public hidebysig virtual final
instance int32 GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 XYZ.ABC/Expr::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 XYZ.ABC/Expr::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method Expr::GetHashCode
.method public hidebysig virtual final
instance bool Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 61 (0x3d)
.maxstack 4
.locals init (class XYZ.ABC/Expr V_0,
class XYZ.ABC/Expr V_1,
class XYZ.ABC/Expr V_2,
class XYZ.ABC/Expr V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4,
+ class [mscorlib]System.Collections.IEqualityComparer V_4,
int32 V_5,
int32 V_6,
- class [System.Runtime]System.Collections.IEqualityComparer V_7)
+ class [mscorlib]System.Collections.IEqualityComparer V_7)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0035
@@ -1148,8 +1162,8 @@
.method public hidebysig virtual final
instance bool Equals(class XYZ.ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class XYZ.ABC/Expr V_0,
@@ -1187,8 +1201,8 @@
.method public hidebysig virtual final
instance bool Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class XYZ.ABC/Expr V_0)
@@ -1209,9 +1223,9 @@
.property instance int32 Tag()
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
.get instance int32 XYZ.ABC/Expr::get_Tag()
} // end of property Expr::Tag
.property instance int32 Item()
@@ -1219,15 +1233,15 @@
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags,
int32,
int32) = ( 01 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.get instance int32 XYZ.ABC/Expr::get_Item()
} // end of property Expr::Item
} // end of class Expr
.class auto ansi serializable nested public beforefieldinit MyExn
- extends [System.Runtime]System.Exception
- implements [System.Runtime]System.Collections.IStructuralEquatable
+ extends [mscorlib]System.Exception
+ implements [mscorlib]System.Collections.IStructuralEquatable
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 05 00 00 00 00 00 )
.field assembly int32 Data0@
@@ -1237,7 +1251,7 @@
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 XYZ.ABC/MyExn::Data0@
@@ -1250,21 +1264,21 @@
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ret
} // end of method MyExn::.ctor
.method family specialname rtspecialname
- instance void .ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo info,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext context) cil managed
+ instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed
{
// Code size 9 (0x9)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldarg.1
IL_0002: ldarg.2
- IL_0003: call instance void [System.Runtime]System.Exception::.ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext)
+ IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext)
IL_0008: ret
} // end of method MyExn::.ctor
@@ -1278,17 +1292,31 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class XYZ.ABC/MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
- GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 41 (0x29)
.maxstack 7
.locals init (int32 V_0,
- class [System.Runtime]System.Collections.IEqualityComparer V_1,
+ class [mscorlib]System.Collections.IEqualityComparer V_1,
int32 V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3)
+ class [mscorlib]System.Collections.IEqualityComparer V_3)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0027
@@ -1324,36 +1352,36 @@
.method public hidebysig virtual instance int32
GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 XYZ.ABC/MyExn::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 XYZ.ABC/MyExn::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method MyExn::GetHashCode
.method public hidebysig virtual instance bool
Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 78 (0x4e)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0,
- class [System.Runtime]System.Exception V_1,
+ .locals init (class [mscorlib]System.Exception V_0,
+ class [mscorlib]System.Exception V_1,
object V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3,
+ class [mscorlib]System.Collections.IEqualityComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IEqualityComparer V_6)
+ class [mscorlib]System.Collections.IEqualityComparer V_6)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0046
IL_0003: ldarg.1
- IL_0004: isinst [System.Runtime]System.Exception
+ IL_0004: isinst [mscorlib]System.Exception
IL_0009: stloc.0
IL_000a: ldloc.0
IL_000b: brfalse.s IL_0044
@@ -1400,10 +1428,10 @@
} // end of method MyExn::Equals
.method public hidebysig instance bool
- Equals(class [System.Runtime]System.Exception obj) cil managed
+ Equals(class [mscorlib]System.Exception obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -1447,20 +1475,20 @@
.method public hidebysig virtual instance bool
Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0)
+ .locals init (class [mscorlib]System.Exception V_0)
IL_0000: ldarg.1
- IL_0001: isinst [System.Runtime]System.Exception
+ IL_0001: isinst [mscorlib]System.Exception
IL_0006: stloc.0
IL_0007: ldloc.0
IL_0008: brfalse.s IL_0012
IL_000a: ldarg.0
IL_000b: ldloc.0
- IL_000c: callvirt instance bool XYZ.ABC/MyExn::Equals(class [System.Runtime]System.Exception)
+ IL_000c: callvirt instance bool XYZ.ABC/MyExn::Equals(class [mscorlib]System.Exception)
IL_0011: ret
IL_0012: ldc.i4.0
@@ -1476,7 +1504,7 @@
} // end of class MyExn
.class auto ansi serializable nested public A
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.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 )
.field assembly string x
@@ -1486,7 +1514,7 @@
// Code size 16 (0x10)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: callvirt instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: callvirt instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: pop
IL_0008: ldarg.0
@@ -1512,24 +1540,24 @@
} // end of class A
.class abstract auto ansi sealed nested public ABC
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 07 00 00 00 00 00 )
.class auto autochar serializable sealed nested public beforefieldinit Expr
- extends [System.Runtime]System.Object
- implements class [System.Runtime]System.IEquatable`1,
- [System.Runtime]System.Collections.IStructuralEquatable,
- class [System.Runtime]System.IComparable`1,
- [System.Runtime]System.IComparable,
- [System.Runtime]System.Collections.IStructuralComparable
+ extends [mscorlib]System.Object
+ implements class [mscorlib]System.IEquatable`1,
+ [mscorlib]System.Collections.IStructuralEquatable,
+ class [mscorlib]System.IComparable`1,
+ [mscorlib]System.IComparable,
+ [mscorlib]System.Collections.IStructuralComparable
{
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
- 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 15 7B 5F 5F 44 65 62 75 67 44 69 73 70 6C // ...{__DebugDispl
+ 61 79 28 29 2C 6E 71 7D 00 00 ) // ay(),nq}..
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 01 00 00 00 00 00 )
.field assembly initonly int32 item
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.method public static class XYZ.ABC/ABC/Expr
NewNum(int32 item) cil managed
{
@@ -1545,12 +1573,12 @@
.method assembly specialname rtspecialname
instance void .ctor(int32 item) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 XYZ.ABC/ABC/Expr::item
@@ -1560,8 +1588,8 @@
.method public hidebysig instance int32
get_Item() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
@@ -1572,8 +1600,8 @@
.method public hidebysig instance int32
get_Tag() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 4 (0x4)
.maxstack 8
IL_0000: ldarg.0
@@ -1585,8 +1613,8 @@
.method assembly hidebysig specialname
instance object __DebugDisplay() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+0.8A"
@@ -1600,7 +1628,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -1614,16 +1642,16 @@
.method public hidebysig virtual final
instance int32 CompareTo(class XYZ.ABC/ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 66 (0x42)
.maxstack 5
.locals init (class XYZ.ABC/ABC/Expr V_0,
class XYZ.ABC/ABC/Expr V_1,
- class [System.Runtime]System.Collections.IComparer V_2,
+ class [mscorlib]System.Collections.IComparer V_2,
int32 V_3,
int32 V_4,
- class [System.Runtime]System.Collections.IComparer V_5,
+ class [mscorlib]System.Collections.IComparer V_5,
int32 V_6,
int32 V_7)
IL_0000: ldarg.0
@@ -1638,7 +1666,7 @@
IL_0009: stloc.0
IL_000a: ldarg.1
IL_000b: stloc.1
- IL_000c: call class [System.Runtime]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
+ IL_000c: call class [mscorlib]System.Collections.IComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericComparer()
IL_0011: stloc.2
IL_0012: ldloc.0
IL_0013: ldfld int32 XYZ.ABC/ABC/Expr::item
@@ -1677,8 +1705,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -1690,19 +1718,19 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj,
- class [System.Runtime]System.Collections.IComparer comp) cil managed
+ class [mscorlib]System.Collections.IComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 81 (0x51)
.maxstack 5
.locals init (class XYZ.ABC/ABC/Expr V_0,
class XYZ.ABC/ABC/Expr V_1,
class XYZ.ABC/ABC/Expr V_2,
- class [System.Runtime]System.Collections.IComparer V_3,
+ class [mscorlib]System.Collections.IComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IComparer V_6,
+ class [mscorlib]System.Collections.IComparer V_6,
int32 V_7,
int32 V_8)
IL_0000: ldarg.1
@@ -1759,17 +1787,17 @@
} // end of method Expr::CompareTo
.method public hidebysig virtual final
- instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ instance int32 GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 43 (0x2b)
.maxstack 7
.locals init (int32 V_0,
class XYZ.ABC/ABC/Expr V_1,
- class [System.Runtime]System.Collections.IEqualityComparer V_2,
+ class [mscorlib]System.Collections.IEqualityComparer V_2,
int32 V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4)
+ class [mscorlib]System.Collections.IEqualityComparer V_4)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0029
@@ -1810,32 +1838,32 @@
.method public hidebysig virtual final
instance int32 GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 XYZ.ABC/ABC/Expr::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 XYZ.ABC/ABC/Expr::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method Expr::GetHashCode
.method public hidebysig virtual final
instance bool Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 61 (0x3d)
.maxstack 4
.locals init (class XYZ.ABC/ABC/Expr V_0,
class XYZ.ABC/ABC/Expr V_1,
class XYZ.ABC/ABC/Expr V_2,
class XYZ.ABC/ABC/Expr V_3,
- class [System.Runtime]System.Collections.IEqualityComparer V_4,
+ class [mscorlib]System.Collections.IEqualityComparer V_4,
int32 V_5,
int32 V_6,
- class [System.Runtime]System.Collections.IEqualityComparer V_7)
+ class [mscorlib]System.Collections.IEqualityComparer V_7)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0035
@@ -1882,8 +1910,8 @@
.method public hidebysig virtual final
instance bool Equals(class XYZ.ABC/ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class XYZ.ABC/ABC/Expr V_0,
@@ -1921,8 +1949,8 @@
.method public hidebysig virtual final
instance bool Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class XYZ.ABC/ABC/Expr V_0)
@@ -1943,9 +1971,9 @@
.property instance int32 Tag()
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
.get instance int32 XYZ.ABC/ABC/Expr::get_Tag()
} // end of property Expr::Tag
.property instance int32 Item()
@@ -1953,15 +1981,15 @@
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags,
int32,
int32) = ( 01 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.get instance int32 XYZ.ABC/ABC/Expr::get_Item()
} // end of property Expr::Item
} // end of class Expr
.class auto ansi serializable nested public beforefieldinit MyExn
- extends [System.Runtime]System.Exception
- implements [System.Runtime]System.Collections.IStructuralEquatable
+ extends [mscorlib]System.Exception
+ implements [mscorlib]System.Collections.IStructuralEquatable
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 05 00 00 00 00 00 )
.field assembly int32 Data0@
@@ -1971,7 +1999,7 @@
// Code size 14 (0xe)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ldarg.0
IL_0007: ldarg.1
IL_0008: stfld int32 XYZ.ABC/ABC/MyExn::Data0@
@@ -1984,21 +2012,21 @@
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call instance void [System.Runtime]System.Exception::.ctor()
+ IL_0001: call instance void [mscorlib]System.Exception::.ctor()
IL_0006: ret
} // end of method MyExn::.ctor
.method family specialname rtspecialname
- instance void .ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo info,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext context) cil managed
+ instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed
{
// Code size 9 (0x9)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldarg.1
IL_0002: ldarg.2
- IL_0003: call instance void [System.Runtime]System.Exception::.ctor(class [System.Runtime]System.Runtime.Serialization.SerializationInfo,
- valuetype [System.Runtime]System.Runtime.Serialization.StreamingContext)
+ IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo,
+ valuetype [mscorlib]System.Runtime.Serialization.StreamingContext)
IL_0008: ret
} // end of method MyExn::.ctor
@@ -2012,17 +2040,31 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class XYZ.ABC/ABC/MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
- GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ GetHashCode(class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 41 (0x29)
.maxstack 7
.locals init (int32 V_0,
- class [System.Runtime]System.Collections.IEqualityComparer V_1,
+ class [mscorlib]System.Collections.IEqualityComparer V_1,
int32 V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3)
+ class [mscorlib]System.Collections.IEqualityComparer V_3)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0027
@@ -2058,36 +2100,36 @@
.method public hidebysig virtual instance int32
GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: call class [System.Runtime]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
- IL_0006: callvirt instance int32 XYZ.ABC/ABC/MyExn::GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer)
+ IL_0001: call class [mscorlib]System.Collections.IEqualityComparer [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives::get_GenericEqualityComparer()
+ IL_0006: callvirt instance int32 XYZ.ABC/ABC/MyExn::GetHashCode(class [mscorlib]System.Collections.IEqualityComparer)
IL_000b: ret
} // end of method MyExn::GetHashCode
.method public hidebysig virtual instance bool
Equals(object obj,
- class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
+ class [mscorlib]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 78 (0x4e)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0,
- class [System.Runtime]System.Exception V_1,
+ .locals init (class [mscorlib]System.Exception V_0,
+ class [mscorlib]System.Exception V_1,
object V_2,
- class [System.Runtime]System.Collections.IEqualityComparer V_3,
+ class [mscorlib]System.Collections.IEqualityComparer V_3,
int32 V_4,
int32 V_5,
- class [System.Runtime]System.Collections.IEqualityComparer V_6)
+ class [mscorlib]System.Collections.IEqualityComparer V_6)
IL_0000: ldarg.0
IL_0001: brfalse.s IL_0046
IL_0003: ldarg.1
- IL_0004: isinst [System.Runtime]System.Exception
+ IL_0004: isinst [mscorlib]System.Exception
IL_0009: stloc.0
IL_000a: ldloc.0
IL_000b: brfalse.s IL_0044
@@ -2134,10 +2176,10 @@
} // end of method MyExn::Equals
.method public hidebysig instance bool
- Equals(class [System.Runtime]System.Exception obj) cil managed
+ Equals(class [mscorlib]System.Exception obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -2181,20 +2223,20 @@
.method public hidebysig virtual instance bool
Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
- .locals init (class [System.Runtime]System.Exception V_0)
+ .locals init (class [mscorlib]System.Exception V_0)
IL_0000: ldarg.1
- IL_0001: isinst [System.Runtime]System.Exception
+ IL_0001: isinst [mscorlib]System.Exception
IL_0006: stloc.0
IL_0007: ldloc.0
IL_0008: brfalse.s IL_0012
IL_000a: ldarg.0
IL_000b: ldloc.0
- IL_000c: callvirt instance bool XYZ.ABC/ABC/MyExn::Equals(class [System.Runtime]System.Exception)
+ IL_000c: callvirt instance bool XYZ.ABC/ABC/MyExn::Equals(class [mscorlib]System.Exception)
IL_0011: ret
IL_0012: ldc.i4.0
@@ -2210,7 +2252,7 @@
} // end of class MyExn
.class auto ansi serializable nested public A
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.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 )
.field assembly string x
@@ -2220,7 +2262,7 @@
// Code size 16 (0x10)
.maxstack 8
IL_0000: ldarg.0
- IL_0001: callvirt instance void [System.Runtime]System.Object::.ctor()
+ IL_0001: callvirt instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: pop
IL_0008: ldarg.0
@@ -2260,8 +2302,8 @@
.method public specialname static string
get_greeting() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldstr "hello"
@@ -2289,8 +2331,8 @@
.method public specialname static string
get_greeting() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldstr "hello"
@@ -2304,12 +2346,12 @@
} // end of class XYZ.ABC
.class private abstract auto ansi sealed ''.$ToplevelNamespace
- extends [System.Runtime]System.Object
+ extends [mscorlib]System.Object
{
.field static assembly int32 init@
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 )
+ .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
.method public static void main@() cil managed
{
.entrypoint
@@ -2330,4 +2372,4 @@
// =============================================================
// *********** DISASSEMBLY COMPLETE ***********************
-// WARNING: Created Win32 resource file C:\dev\fsharp\artifacts\bin\FSharp.Compiler.ComponentTests\Debug\net6.0\tests\EmittedIL\SerializableAttribute\ToplevelNamespace_fs\ToplevelNamespace.res
+// WARNING: Created Win32 resource file C:\kevinransom\fsharp\artifacts\bin\FSharp.Compiler.ComponentTests\Debug\net472\tests\EmittedIL\SerializableAttribute\ToplevelNamespace_fs\ToplevelNamespace.res
diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelNamespace.fs.il.release.bsl b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelNamespace.fs.il.release.bsl
index 6cd3bc0ed4b..dfaf2444884 100644
--- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelNamespace.fs.il.release.bsl
+++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SerializableAttribute/ToplevelNamespace.fs.il.release.bsl
@@ -12,7 +12,7 @@
.assembly extern FSharp.Core
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
- .ver 6:0:0:0
+ .ver 7:0:0:0
}
.assembly ToplevelNamespace
{
@@ -21,29 +21,29 @@
int32) = ( 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 )
// --- The following custom attribute is added automatically, do not uncomment -------
- // .custom instance void [System.Runtime]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 03 01 00 00 00 00 )
+ // .custom instance void [System.Runtime]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [System.Runtime]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 01 01 00 00 00 00 )
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.mresource public FSharpSignatureData.ToplevelNamespace
{
- // Offset: 0x00000000 Length: 0x0000188E
+ // Offset: 0x00000000 Length: 0x00001884
// WARNING: managed resource file FSharpSignatureData.ToplevelNamespace created
}
.mresource public FSharpOptimizationData.ToplevelNamespace
{
- // Offset: 0x00001898 Length: 0x00000562
+ // Offset: 0x00001888 Length: 0x00000562
// WARNING: managed resource file FSharpOptimizationData.ToplevelNamespace created
}
.module ToplevelNamespace.exe
-// MVID: {628FBBC7-2DCF-3629-A745-0383C7BB8F62}
+// MVID: {62F9A1B0-77E1-A901-A745-0383B0A1F962}
.imagebase 0x00400000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003 // WINDOWS_CUI
.corflags 0x00000001 // ILONLY
-// Image base: 0x0000028D685A0000
+// Image base: 0x0000023A2DE40000
// =============== CLASS MEMBERS DECLARATION ===================
@@ -132,7 +132,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -146,8 +146,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(class XYZ.Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 54 (0x36)
.maxstack 5
.locals init (class XYZ.Expr V_0,
@@ -200,8 +200,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -215,8 +215,8 @@
instance int32 CompareTo(object obj,
class [System.Runtime]System.Collections.IComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 70 (0x46)
.maxstack 5
.locals init (class XYZ.Expr V_0,
@@ -275,8 +275,8 @@
.method public hidebysig virtual final
instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 38 (0x26)
.maxstack 7
.locals init (int32 V_0,
@@ -318,8 +318,8 @@
.method public hidebysig virtual final
instance int32 GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -332,8 +332,8 @@
instance bool Equals(object obj,
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 49 (0x31)
.maxstack 4
.locals init (class XYZ.Expr V_0,
@@ -381,8 +381,8 @@
.method public hidebysig virtual final
instance bool Equals(class XYZ.Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class XYZ.Expr V_0,
@@ -420,8 +420,8 @@
.method public hidebysig virtual final
instance bool Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class XYZ.Expr V_0)
@@ -511,11 +511,25 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class XYZ.MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 7
.locals init (int32 V_0,
@@ -551,8 +565,8 @@
.method public hidebysig virtual instance int32
GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -565,8 +579,8 @@
Equals(object obj,
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 67 (0x43)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0,
@@ -620,8 +634,8 @@
.method public hidebysig instance bool
Equals(class [System.Runtime]System.Exception obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -665,8 +679,8 @@
.method public hidebysig virtual instance bool
Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0)
@@ -818,7 +832,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -832,8 +846,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(class XYZ.ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 54 (0x36)
.maxstack 5
.locals init (class XYZ.ABC/Expr V_0,
@@ -886,8 +900,8 @@
.method public hidebysig virtual final
instance int32 CompareTo(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -901,8 +915,8 @@
instance int32 CompareTo(object obj,
class [System.Runtime]System.Collections.IComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 70 (0x46)
.maxstack 5
.locals init (class XYZ.ABC/Expr V_0,
@@ -961,8 +975,8 @@
.method public hidebysig virtual final
instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 38 (0x26)
.maxstack 7
.locals init (int32 V_0,
@@ -1004,8 +1018,8 @@
.method public hidebysig virtual final
instance int32 GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -1018,8 +1032,8 @@
instance bool Equals(object obj,
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 49 (0x31)
.maxstack 4
.locals init (class XYZ.ABC/Expr V_0,
@@ -1067,8 +1081,8 @@
.method public hidebysig virtual final
instance bool Equals(class XYZ.ABC/Expr obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class XYZ.ABC/Expr V_0,
@@ -1106,8 +1120,8 @@
.method public hidebysig virtual final
instance bool Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class XYZ.ABC/Expr V_0)
@@ -1197,11 +1211,25 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class XYZ.ABC/MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 7
.locals init (int32 V_0,
@@ -1237,8 +1265,8 @@
.method public hidebysig virtual instance int32
GetHashCode() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -1251,8 +1279,8 @@
Equals(object obj,
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 67 (0x43)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0,
@@ -1306,8 +1334,8 @@
.method public hidebysig instance bool
Equals(class [System.Runtime]System.Exception obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -1351,8 +1379,8 @@
.method public hidebysig virtual instance bool
Equals(object obj) cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0)
@@ -1504,7 +1532,7 @@
.method public strict virtual instance string
ToString() cil managed
{
- .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
// Code size 22 (0x16)
.maxstack 8
IL_0000: ldstr "%+A"
@@ -1519,7 +1547,7 @@
instance int32 CompareTo(class XYZ.ABC/ABC/Expr obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 54 (0x36)
.maxstack 5
.locals init (class XYZ.ABC/ABC/Expr V_0,
@@ -1573,7 +1601,7 @@
instance int32 CompareTo(object obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 13 (0xd)
.maxstack 8
IL_0000: ldarg.0
@@ -1588,7 +1616,7 @@
class [System.Runtime]System.Collections.IComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 70 (0x46)
.maxstack 5
.locals init (class XYZ.ABC/ABC/Expr V_0,
@@ -1648,7 +1676,7 @@
instance int32 GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 38 (0x26)
.maxstack 7
.locals init (int32 V_0,
@@ -1691,7 +1719,7 @@
instance int32 GetHashCode() cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -1705,7 +1733,7 @@
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 49 (0x31)
.maxstack 4
.locals init (class XYZ.ABC/ABC/Expr V_0,
@@ -1754,7 +1782,7 @@
instance bool Equals(class XYZ.ABC/ABC/Expr obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 4
.locals init (class XYZ.ABC/ABC/Expr V_0,
@@ -1793,7 +1821,7 @@
instance bool Equals(object obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class XYZ.ABC/ABC/Expr V_0)
@@ -1883,11 +1911,25 @@
IL_0006: ret
} // end of method MyExn::get_Data0
+ .method public strict virtual instance string
+ get_Message() cil managed
+ {
+ .custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
+ // Code size 22 (0x16)
+ .maxstack 8
+ IL_0000: ldstr "%+A"
+ IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string,string,class XYZ.ABC/ABC/MyExn>::.ctor(string)
+ IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatToString>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4)
+ IL_000f: ldarg.0
+ IL_0010: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0)
+ IL_0015: ret
+ } // end of method MyExn::get_Message
+
.method public hidebysig virtual instance int32
GetHashCode(class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 37 (0x25)
.maxstack 7
.locals init (int32 V_0,
@@ -1924,7 +1966,7 @@
GetHashCode() cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 12 (0xc)
.maxstack 8
IL_0000: ldarg.0
@@ -1938,7 +1980,7 @@
class [System.Runtime]System.Collections.IEqualityComparer comp) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 67 (0x43)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0,
@@ -1993,7 +2035,7 @@
Equals(class [System.Runtime]System.Exception obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 56 (0x38)
.maxstack 4
.locals init (object V_0)
@@ -2038,7 +2080,7 @@
Equals(object obj) cil managed
{
.custom instance void [System.Runtime]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 )
- .custom instance void [runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
+ .custom instance void [System.Runtime]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 )
// Code size 20 (0x14)
.maxstack 4
.locals init (class [System.Runtime]System.Exception V_0)
@@ -2186,4 +2228,4 @@
// =============================================================
// *********** DISASSEMBLY COMPLETE ***********************
-// WARNING: Created Win32 resource file C:\Users\vzari\code\fsharp\artifacts\bin\FSharp.Compiler.ComponentTests\Release\net6.0\tests\EmittedIL\SerializableAttribute\ToplevelNamespace_fs\ToplevelNamespace.res
+// WARNING: Created Win32 resource file C:\kevinransom\fsharp\artifacts\bin\FSharp.Compiler.ComponentTests\Release\net6.0\tests\EmittedIL\SerializableAttribute\ToplevelNamespace_fs\ToplevelNamespace.res
diff --git a/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj b/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj
index 3015cfd8873..4a9e7f7c650 100644
--- a/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj
+++ b/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj
@@ -15,8 +15,13 @@
false
$(OtherFlags) --warnon:1182
$(NoWarn);FS0988
- true
-
+ $(DefineConstants);RELEASE
+ $(DefineConstants);DEBUG
+
+ true
+
+
+
diff --git a/tests/FSharp.Compiler.ComponentTests/Interop/RequiredAndInitOnlyProperties.fs b/tests/FSharp.Compiler.ComponentTests/Interop/RequiredAndInitOnlyProperties.fs
index 4af0d6d280a..a3e6b6b6ed7 100644
--- a/tests/FSharp.Compiler.ComponentTests/Interop/RequiredAndInitOnlyProperties.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Interop/RequiredAndInitOnlyProperties.fs
@@ -59,7 +59,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compileAndRun
|> shouldSucceed
@@ -94,7 +94,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compileAndRun
|> shouldSucceed
@@ -129,7 +129,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compileAndRun
|> shouldSucceed
@@ -159,7 +159,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compileAndRun
|> shouldSucceed
@@ -188,7 +188,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compile
|> shouldFail
@@ -220,7 +220,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compile
|> shouldFail
@@ -251,7 +251,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compile
|> shouldFail
@@ -283,7 +283,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compile
|> shouldFail
@@ -314,7 +314,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compile
|> shouldFail
@@ -350,7 +350,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compileAndRun
|> shouldSucceed
@@ -392,7 +392,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compileAndRun
|> shouldSucceed
@@ -410,7 +410,7 @@ let main _ =
"""
FSharp fsharpSource2
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compile
|> shouldFail
@@ -433,7 +433,7 @@ type RAIOFS() =
"""
FSharp fsharpSource
|> asLibrary
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldFail
|> withSingleDiagnostic (Warning 202, Line 6, Col 7, Line 6, Col 21, "This attribute is currently unsupported by the F# compiler. Applying it will not achieve its intended effect.")
\ No newline at end of file
diff --git a/tests/FSharp.Compiler.ComponentTests/Interop/StaticsInInterfaces.fs b/tests/FSharp.Compiler.ComponentTests/Interop/StaticsInInterfaces.fs
index 320804e2c7c..3d6afab3f3b 100644
--- a/tests/FSharp.Compiler.ComponentTests/Interop/StaticsInInterfaces.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Interop/StaticsInInterfaces.fs
@@ -106,7 +106,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpOperators]
|> compileAndRun
|> shouldSucceed
@@ -142,7 +142,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compileAndRun
|> shouldSucceed
@@ -194,7 +194,7 @@ type MyRepeatSequence2() =
static member Next(other: MyRepeatSequence2) : MyRepeatSequence2 = MyRepeatSequence2.Next(other)
"""
Fsx fsharpSource
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compile
|> shouldSucceed
@@ -312,7 +312,7 @@ let main _ =
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpLib]
|> compileAndRun
|> shouldSucceed
@@ -339,7 +339,7 @@ let main _ = 0
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> compileAndRun
|> shouldSucceed
@@ -365,7 +365,7 @@ let main _ = 0
"""
FSharp fsharpSource
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> compileAndRun
|> shouldSucceed
@@ -400,7 +400,7 @@ module Test =
0
"""
|> asExe
- |> withLangVersionPreview
+ |> withLangVersion70
|> compileAndRun
|> shouldSucceed
|> verifyIL [
@@ -635,8 +635,6 @@ module Test =
IL_002e: ldc.i4.0
IL_002f: ret
}
-
-}
"""
#endif
]
@@ -658,7 +656,7 @@ module Test =
let F<'T when 'T :> IFoo<'T>>(x: 'T, y: 'T) =
'T.Foo(x, y)
"""
- |> withLangVersionPreview
+ |> withLangVersion70
|> withName "FsLibAssembly"
|> withOptions ["--nowarn:3535"]
diff --git a/tests/FSharp.Compiler.ComponentTests/Language/AttributeCheckingTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/AttributeCheckingTests.fs
index 9a24fdb8663..a5db85f88de 100644
--- a/tests/FSharp.Compiler.ComponentTests/Language/AttributeCheckingTests.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Language/AttributeCheckingTests.fs
@@ -77,7 +77,7 @@ type C() =
ignore newChildCopy
"""
FSharp fsharpSource
- |> withLangVersionPreview
+ |> withLangVersion70
|> withReferences [csharpBaseClass]
|> compile
|> shouldSucceed
diff --git a/tests/FSharp.Compiler.ComponentTests/Miscellaneous/ListLiterals.fs b/tests/FSharp.Compiler.ComponentTests/Miscellaneous/ListLiterals.fs
index a3388896d62..62998d31b55 100644
--- a/tests/FSharp.Compiler.ComponentTests/Miscellaneous/ListLiterals.fs
+++ b/tests/FSharp.Compiler.ComponentTests/Miscellaneous/ListLiterals.fs
@@ -22,6 +22,6 @@ module ListLiterals =
let ``List literals have no limited length in langversion preview`` compilation =
compilation
|> asFsx
- |> withLangVersionPreview
+ |> withLangVersion70
|> compile
|> shouldSucceed
\ No newline at end of file
diff --git a/tests/FSharp.Compiler.ComponentTests/OCamlCompat/OCamlCompat.fs b/tests/FSharp.Compiler.ComponentTests/OCamlCompat/OCamlCompat.fs
index c94f95e8457..e40797ba218 100644
--- a/tests/FSharp.Compiler.ComponentTests/OCamlCompat/OCamlCompat.fs
+++ b/tests/FSharp.Compiler.ComponentTests/OCamlCompat/OCamlCompat.fs
@@ -13,18 +13,20 @@ module ``OCamlCompat test cases`` =
let ``E_IndentOff01_fs --warnaserror --test:ErrorRanges`` compilation =
compilation
|> asFsx
- |> withOptions ["--warnaserror"; "--test:ErrorRanges"]
+ |> withOptions ["--test:ErrorRanges"]
|> compile
|> shouldFail
- |> withErrorCode 0062
- |> withDiagnosticMessageMatches "This construct is for ML compatibility\. Consider using a file with extension '\.ml' or '\.mli' instead\. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'\."
+ |> withDiagnostics [
+ (Error 62, Line 4, Col 1, Line 4, Col 14, """This construct is deprecated. The use of '#light "off"' or '#indent "off"' was deprecated in F# 2.0 and is no longer supported. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.""")
+ ]
[]
let ``IndentOff02_fs --warnaserror"; "--mlcompatibility`` compilation =
compilation
|> asFsx
- |> withOptions ["--warnaserror"; "--mlcompatibility"]
+ |> withOcamlCompat
+ |> withLangVersion50
|> typecheck
|> shouldSucceed
@@ -37,8 +39,9 @@ module ``OCamlCompat test cases`` =
|> withOptions ["--test:ErrorRanges"]
|> compile
|> shouldFail
- |> withWarningCode 0062
- |> withDiagnosticMessageMatches "This construct is for ML compatibility\. Consider using a file with extension '\.ml' or '\.mli' instead\. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'\."
+ |> withDiagnostics [
+ (Error 62, Line 4, Col 1, Line 4, Col 14, """This construct is deprecated. The use of '#light "off"' or '#indent "off"' was deprecated in F# 2.0 and is no longer supported. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.""")
+ ]
//NoMT SOURCE=IndentOff04.fsx COMPILE_ONLY=1 SCFLAGS="--warnaserror --mlcompatibility" FSIMODE=PIPE # IndentOff04.fsx
@@ -46,11 +49,13 @@ module ``OCamlCompat test cases`` =
let ``IndentOff04_fsx --warnaserror --mlcompatibility`` compilation =
compilation
|> asFsx
- |> withOptions ["--warnaserror"; " --mlcompatibility"]
+ |> withOptions ["--test:ErrorRanges"]
+ |> withOcamlCompat
|> compile
|> shouldFail
- |> withErrorCode 62
- |> withDiagnosticMessageMatches "This construct is for ML compatibility\. Consider using a file with extension '\.ml' or '\.mli' instead\. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'\."
+ |> withDiagnostics [
+ (Error 62, Line 3, Col 1, Line 3, Col 14, """This construct is deprecated. The use of '#light "off"' or '#indent "off"' was deprecated in F# 2.0 and is no longer supported. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.""")
+ ]
//NoMT SOURCE=W_IndentOff05.fsx COMPILE_ONLY=1 SCFLAGS="--test:ErrorRanges" FSIMODE=PIPE # W_IndentOff05.fsx
@@ -61,8 +66,9 @@ module ``OCamlCompat test cases`` =
|> withOptions ["--test:ErrorRanges"]
|> compile
|> shouldFail
- |> withWarningCode 0062
- |> withDiagnosticMessageMatches "This construct is for ML compatibility\. Consider using a file with extension '\.ml' or '\.mli' instead\. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'\."
+ |> withDiagnostics [
+ (Error 62, Line 3, Col 1, Line 3, Col 14, """This construct is deprecated. The use of '#light "off"' or '#indent "off"' was deprecated in F# 2.0 and is no longer supported. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.""")
+ ]
//NoMT SOURCE=E_IndentOff06.fsx COMPILE_ONLY=1 SCFLAGS="--warnaserror" FSIMODE=PIPE # E_IndentOff06.fsx
@@ -70,11 +76,12 @@ module ``OCamlCompat test cases`` =
let ``E_IndentOff06_fsx --test:ErrorRanges`` compilation =
compilation
|> asFsx
- |> withOptions ["--warnaserror"; "--test:ErrorRanges"]
+ |> withOptions ["--test:ErrorRanges"]
|> compile
|> shouldFail
- |> withErrorCode 0062
- |> withDiagnosticMessageMatches "This construct is for ML compatibility\. Consider using a file with extension '\.ml' or '\.mli' instead\. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'\."
+ |> withDiagnostics [
+ (Error 62, Line 3, Col 1, Line 3, Col 14, """This construct is deprecated. The use of '#light "off"' or '#indent "off"' was deprecated in F# 2.0 and is no longer supported. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.""")
+ ]
// SOURCE=E_mlExtension01.ml COMPILE_ONLY=1 SCFLAGS="--warnaserror --test:ErrorRanges" # E_mlExtension01.ml
@@ -92,6 +99,7 @@ module ``OCamlCompat test cases`` =
compilation
|> asFsx
|> withOptions ["--warnaserror"; "--mlcompatibility"]
+ |> withLangVersion50
|> compile
|> shouldSucceed
@@ -112,6 +120,7 @@ module ``OCamlCompat test cases`` =
compilation
|> asFsx
|> withOptions ["--warnaserror"; "--mlcompatibility"]
+ |> withLangVersion50
|> typecheck
|> shouldSucceed
@@ -122,6 +131,7 @@ module ``OCamlCompat test cases`` =
compilation
|> asExe
|> withOptions ["--test:ErrorRanges"; "--mlcompatibility"]
+ |> withLangVersion50
|> compile
|> shouldSucceed
@@ -142,9 +152,10 @@ module ``OCamlCompat test cases`` =
|> asExe
|> ignoreWarnings
|> compile
- |> shouldSucceed
- |> withWarningCode 62
- |> withDiagnosticMessageMatches "This construct is for ML compatibility\. The syntax '\(typ,\.\.\.,typ\) ident' is not used in F# code. Consider using 'ident' instead. You can disable this warning by using '--mlcompatibility' or '--nowarn:62'\."
+ |> shouldFail
+ |> withDiagnostics [
+ (Error 62, Line 10, Col 19, Line 10, Col 48, """This construct is deprecated. The use of multiple parenthesized type parameters before a generic type name such as '(int, int) Map' was deprecated in F# 2.0 and is no longer supported. You can enable this feature by using '--langversion:5.0' and '--mlcompatibility'.""")
+ ]
// SOURCE=OCamlStyleArrayIndexing.fs SCFLAGS="--mlcompatibility" # OCamlStyleArrayIndexing.fs
@@ -152,6 +163,7 @@ module ``OCamlCompat test cases`` =
let ``OCamlStyleArrayIndexing_fs --mlcompatibility`` compilation =
compilation
|> asExe
- |> withOptions ["--mlcompatibility"]
+ |> withOcamlCompat
+ |> withLangVersion50
|> compile
|> shouldSucceed
diff --git a/tests/FSharp.Compiler.UnitTests/ByteMemoryTests.fs b/tests/FSharp.Compiler.UnitTests/ByteMemoryTests.fs
index 6a46f5ce74f..cdc2a981071 100644
--- a/tests/FSharp.Compiler.UnitTests/ByteMemoryTests.fs
+++ b/tests/FSharp.Compiler.UnitTests/ByteMemoryTests.fs
@@ -10,7 +10,8 @@ module ByteMemoryTests =
open FSharp.Compiler.IO
[]
- let ``ByteMemory.CreateMemoryMappedFile succeeds with byte length of zero``() =
+ let ``ByteMemory.CreateMemoryMappedFile succeeds with byte length of zero`` () =
+
let memory = ByteMemory.Empty.AsReadOnly()
let newMemory = ByteStorage.FromByteMemoryAndCopy(memory, useBackingMemoryMappedFile = true).GetByteMemory()
- Assert.shouldBe(0, newMemory.Length)
+ Assert.shouldBe 0 newMemory.Length
diff --git a/tests/FSharp.Compiler.UnitTests/ManglingNameOfProvidedTypes.fs b/tests/FSharp.Compiler.UnitTests/ManglingNameOfProvidedTypes.fs
index 3d6651df05d..24516f3868d 100644
--- a/tests/FSharp.Compiler.UnitTests/ManglingNameOfProvidedTypes.fs
+++ b/tests/FSharp.Compiler.UnitTests/ManglingNameOfProvidedTypes.fs
@@ -63,7 +63,9 @@ type ManglingNamesOfProvidedTypesWithMultipleParameter() =
[]
member this.DemangleMultiParameter() =
+ let smashtogether arr = arr |> Seq.fold(fun acc (f,s) -> acc + $"-{f}-{s}") ""
let name, parameters = PrettyNaming.DemangleProvidedTypeName "TestType,Foo=\"xyz\",Foo2=\"abc\""
Assert.shouldBe "TestType" name
- Assert.shouldBe([| "Foo", "xyz"
- "Foo2", "abc" |], parameters)
+ let parameters = smashtogether parameters
+ let expected = smashtogether [| "Foo", "xyz"; "Foo2", "abc" |]
+ Assert.shouldBe expected parameters
diff --git a/tests/FSharp.Test.Utilities/Compiler.fs b/tests/FSharp.Test.Utilities/Compiler.fs
index d227cc1630e..d70cffdafd4 100644
--- a/tests/FSharp.Test.Utilities/Compiler.fs
+++ b/tests/FSharp.Test.Utilities/Compiler.fs
@@ -388,6 +388,9 @@ module rec Compiler =
let withLangVersion60 (cUnit: CompilationUnit) : CompilationUnit =
withOptionsHelper [ "--langversion:6.0" ] "withLangVersion60 is only supported on F#" cUnit
+ let withLangVersion70 (cUnit: CompilationUnit) : CompilationUnit =
+ withOptionsHelper [ "--langversion:7.0" ] "withLangVersion70 is only supported on F#" cUnit
+
let withLangVersionPreview (cUnit: CompilationUnit) : CompilationUnit =
withOptionsHelper [ "--langversion:preview" ] "withLangVersionPreview is only supported on F#" cUnit
diff --git a/tests/fsharp/conformance/lexicalanalysis/E_LessThanDotOpenParen001.bsl b/tests/fsharp/conformance/lexicalanalysis/E_LessThanDotOpenParen001.bsl
index 1bd18780642..07d69bc5277 100644
--- a/tests/fsharp/conformance/lexicalanalysis/E_LessThanDotOpenParen001.bsl
+++ b/tests/fsharp/conformance/lexicalanalysis/E_LessThanDotOpenParen001.bsl
@@ -1,7 +1,7 @@
E_LessThanDotOpenParen001.fsx(23,12,23,15): typecheck error FS0043: No overloads match for method 'op_PlusPlusPlus'.
-Known return type: ^a
+Known return type: 'a
Known type parameters: < (string -> int) , TestType >
diff --git a/tests/fsharp/single-test.fs b/tests/fsharp/single-test.fs
index 02548f16e56..64857397705 100644
--- a/tests/fsharp/single-test.fs
+++ b/tests/fsharp/single-test.fs
@@ -105,6 +105,11 @@ let generateProjectArtifacts (pc:ProjectConfiguration) outputType (targetFramewo
"FSharp.Core"
(Path.GetFullPath(__SOURCE_DIRECTORY__) + "/../../artifacts/bin/" + compiler + "/" + configuration + "/netstandard2.0/FSharp.Core.dll")
+ let langver, options =
+ match languageVersion with
+ | "supports-ml" -> "5.0", "--mlcompatibility"
+ | v -> v, ""
+
let computeSourceItems addDirectory addCondition (compileItem:CompileItem) sources =
let computeInclude src =
let fileName = if addDirectory then Path.Combine(pc.SourceDirectory, src) else src
@@ -142,6 +147,7 @@ let generateProjectArtifacts (pc:ProjectConfiguration) outputType (targetFramewo
$(DEBUG)
portable
$(LANGUAGEVERSION)
+ $(OTHERFLAGS)
$(OPTIMIZE)
false
NETCOREAPP
@@ -196,7 +202,8 @@ let generateProjectArtifacts (pc:ProjectConfiguration) outputType (targetFramewo
|> replaceTokens "$(OPTIMIZE)" optimize
|> replaceTokens "$(DEBUG)" debug
|> replaceTokens "$(TARGETFRAMEWORK)" targetFramework
- |> replaceTokens "$(LANGUAGEVERSION)" languageVersion
+ |> replaceTokens "$(LANGUAGEVERSION)" langver
+ |> replaceTokens "$(OTHERFLAGS)" options
|> replaceTokens "$(RestoreFromArtifactsPath)" (Path.GetFullPath(__SOURCE_DIRECTORY__) + "/../../artifacts/packages/" + configuration)
generateProjBody
@@ -376,10 +383,17 @@ let singleTestBuildAndRunVersion dir p version =
let singleVersionedNegTest (cfg: TestConfig) version testname =
+ let options =
+ match version with
+ | "supports-ml" -> "--langversion:5.0 --mlcompatibility"
+ | "supports-ml*" -> "--mlcompatibility"
+ | v when not (String.IsNullOrEmpty(v)) -> $"--langversion:{v}"
+ | _ -> ""
+
let cfg = {
cfg with
- fsc_flags = sprintf "%s %s --preferreduilang:en-US --define:NEGATIVE" cfg.fsc_flags (if not (String.IsNullOrEmpty(version)) then "--langversion:" + version else "")
- fsi_flags = sprintf "%s --preferreduilang:en-US %s" cfg.fsi_flags (if not (String.IsNullOrEmpty(version)) then "--langversion:" + version else "")
+ fsc_flags = sprintf "%s %s --preferreduilang:en-US --define:NEGATIVE" cfg.fsc_flags options
+ fsi_flags = sprintf "%s --preferreduilang:en-US %s" cfg.fsi_flags options
}
// REM == Set baseline (fsc vs vs, in case the vs baseline exists)
diff --git a/tests/fsharp/tests.fs b/tests/fsharp/tests.fs
index 3422922c449..58dab43e046 100644
--- a/tests/fsharp/tests.fs
+++ b/tests/fsharp/tests.fs
@@ -299,22 +299,22 @@ module CoreTests =
let ``members-factors-mutrec-FSI`` () = singleTestBuildAndRun "core/members/factors-mutrec" FSI
[]
- let ``graph-FSC_DEBUG`` () = singleTestBuildAndRun "perf/graph" FSC_DEBUG
+ let ``graph-FSC_DEBUG`` () = singleTestBuildAndRunVersion "perf/graph" FSC_DEBUG "supports-ml"
[]
- let ``graph-FSC_OPTIMIZED`` () = singleTestBuildAndRun "perf/graph" FSC_OPTIMIZED
+ let ``graph-FSC_OPTIMIZED`` () = singleTestBuildAndRunVersion "perf/graph" FSC_OPTIMIZED "supports-ml"
[]
- let ``graph-FSI`` () = singleTestBuildAndRun "perf/graph" FSI
+ let ``graph-FSI`` () = singleTestBuildAndRunVersion "perf/graph" FSI "supports-ml"
[]
- let ``nbody-FSC_DEBUG`` () = singleTestBuildAndRun "perf/nbody" FSC_DEBUG
+ let ``nbody-FSC_DEBUG`` () = singleTestBuildAndRunVersion "perf/nbody" FSC_DEBUG "supports-ml"
[]
- let ``nbody-FSC_OPTIMIZED`` () = singleTestBuildAndRun "perf/nbody" FSC_OPTIMIZED
+ let ``nbody-FSC_OPTIMIZED`` () = singleTestBuildAndRunVersion "perf/nbody" FSC_OPTIMIZED "supports-ml"
[]
- let ``nbody-FSI`` () = singleTestBuildAndRun "perf/nbody" FSI
+ let ``nbody-FSI`` () = singleTestBuildAndRunVersion "perf/nbody" FSI "supports-ml"
[]
let ``forexpression-FSC_DEBUG`` () = singleTestBuildAndRun "core/forexpression" FSC_DEBUG
@@ -939,7 +939,7 @@ module CoreTests =
begin
use testOkFile = fileguard cfg "test.ok"
- fsiStdin cfg "test1.ml" "--maxerrors:1" []
+ fsiStdin cfg "test1.ml" " --langversion:5.0 --mlcompatibility --maxerrors:1" []
testOkFile.CheckExists()
end
@@ -981,15 +981,15 @@ module CoreTests =
let hiding () =
let cfg = testConfig "core/hiding"
- fsc cfg "%s -a --optimize -o:lib.dll" cfg.fsc_flags ["lib.mli";"lib.ml";"libv.ml"]
+ fsc cfg "%s -a --optimize --langversion:5.0 --mlcompatibility -o:lib.dll" cfg.fsc_flags ["lib.mli";"lib.ml";"libv.ml"]
peverify cfg "lib.dll"
- fsc cfg "%s -a --optimize -r:lib.dll -o:lib2.dll" cfg.fsc_flags ["lib2.mli";"lib2.ml";"lib3.ml"]
+ fsc cfg "%s -a --optimize --langversion:5.0 --mlcompatibility -r:lib.dll -o:lib2.dll" cfg.fsc_flags ["lib2.mli";"lib2.ml";"lib3.ml"]
peverify cfg "lib2.dll"
- fsc cfg "%s --optimize -r:lib.dll -r:lib2.dll -o:client.exe" cfg.fsc_flags ["client.ml"]
+ fsc cfg "%s --optimize --langversion:5.0 --mlcompatibility -r:lib.dll -r:lib2.dll -o:client.exe" cfg.fsc_flags ["client.ml"]
peverify cfg "client.exe"
@@ -1262,9 +1262,9 @@ module CoreTests =
let parsing () =
let cfg = testConfig "core/parsing"
- fsc cfg "%s -a -o:crlf.dll -g" cfg.fsc_flags ["crlf.ml"]
+ fsc cfg "%s -a --langversion:5.0 --mlcompatibility -o:crlf.dll -g" cfg.fsc_flags ["crlf.ml"]
- fsc cfg "%s -o:toplet.exe -g" cfg.fsc_flags ["toplet.ml"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility -o:toplet.exe -g" cfg.fsc_flags ["toplet.ml"]
peverify cfg "toplet.exe"
@@ -1298,7 +1298,7 @@ module CoreTests =
let cfg = testConfig "core/internalsvisible"
// Compiling F# Library
- fsc cfg "%s --version:1.2.3 --keyfile:key.snk -a --optimize -o:library.dll" cfg.fsc_flags ["library.fsi"; "library.fs"]
+ fsc cfg "%s --version:1.2.3 --keyfile:key.snk --langversion:5.0 --mlcompatibility -a --optimize -o:library.dll" cfg.fsc_flags ["library.fsi"; "library.fs"]
peverify cfg "library.dll"
@@ -1308,7 +1308,7 @@ module CoreTests =
peverify cfg "librarycs.dll"
// Compiling F# main referencing C# and F# libraries
- fsc cfg "%s --version:1.2.3 --keyfile:key.snk --optimize -r:library.dll -r:librarycs.dll -o:main.exe" cfg.fsc_flags ["main.fs"]
+ fsc cfg "%s --version:1.2.3 --keyfile:key.snk --optimize --langversion:5.0 --mlcompatibility -r:library.dll -r:librarycs.dll -o:main.exe" cfg.fsc_flags ["main.fs"]
peverify cfg "main.exe"
@@ -1882,19 +1882,19 @@ module CoreTests =
let testResources () =
let cfg = testConfig "core/resources"
- fsc cfg "%s --resource:Resources.resources -o:test-embed.exe -g" cfg.fsc_flags ["test.fs"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility --resource:Resources.resources -o:test-embed.exe -g" cfg.fsc_flags ["test.fs"]
peverify cfg "test-embed.exe"
- fsc cfg "%s --linkresource:Resources.resources -o:test-link.exe -g" cfg.fsc_flags ["test.fs"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility --linkresource:Resources.resources -o:test-link.exe -g" cfg.fsc_flags ["test.fs"]
peverify cfg "test-link.exe"
- fsc cfg "%s --resource:Resources.resources,ResourceName.resources -o:test-embed-named.exe -g" cfg.fsc_flags ["test.fs"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility --resource:Resources.resources,ResourceName.resources -o:test-embed-named.exe -g" cfg.fsc_flags ["test.fs"]
peverify cfg "test-embed-named.exe"
- fsc cfg "%s --linkresource:Resources.resources,ResourceName.resources -o:test-link-named.exe -g" cfg.fsc_flags ["test.fs"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility --linkresource:Resources.resources,ResourceName.resources -o:test-link-named.exe -g" cfg.fsc_flags ["test.fs"]
peverify cfg "test-link-named.exe"
@@ -1950,13 +1950,13 @@ module CoreTests =
peverify cfg "app69514-withsig.exe"
- fsc cfg "%s -o:lib.dll -a -g" cfg.fsc_flags ["lib.ml"]
+ fsc cfg "%s -o:lib.dll -a --langversion:5.0 --mlcompatibility -g" cfg.fsc_flags ["lib.ml"]
peverify cfg "lib.dll"
csc cfg """/nologo /r:"%s" /r:lib.dll /out:test.exe """ cfg.FSCOREDLLPATH ["test.cs"]
- fsc cfg "%s --optimize -o:lib--optimize.dll -a -g" cfg.fsc_flags ["lib.ml"]
+ fsc cfg "%s --optimize -o:lib--optimize.dll -a --langversion:5.0 --mlcompatibility -g" cfg.fsc_flags ["lib.ml"]
peverify cfg "lib--optimize.dll"
@@ -2111,19 +2111,19 @@ module ToolsTests =
let cfg =
testConfig "tools/bundle"
- fsc cfg "%s --progress --standalone -o:test-one-fsharp-module.exe -g" cfg.fsc_flags ["test-one-fsharp-module.fs"]
+ fsc cfg "%s --progress --langversion:5.0 --mlcompatibility --standalone -o:test-one-fsharp-module.exe -g" cfg.fsc_flags ["test-one-fsharp-module.fs"]
peverify cfg "test-one-fsharp-module.exe"
- fsc cfg "%s -a -o:test_two_fsharp_modules_module_1.dll -g" cfg.fsc_flags ["test_two_fsharp_modules_module_1.fs"]
+ fsc cfg "%s -a --langversion:5.0 --mlcompatibility -o:test_two_fsharp_modules_module_1.dll -g" cfg.fsc_flags ["test_two_fsharp_modules_module_1.fs"]
peverify cfg "test_two_fsharp_modules_module_1.dll"
- fsc cfg "%s --standalone -r:test_two_fsharp_modules_module_1.dll -o:test_two_fsharp_modules_module_2.exe -g" cfg.fsc_flags ["test_two_fsharp_modules_module_2.fs"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility --standalone -r:test_two_fsharp_modules_module_1.dll -o:test_two_fsharp_modules_module_2.exe -g" cfg.fsc_flags ["test_two_fsharp_modules_module_2.fs"]
peverify cfg "test_two_fsharp_modules_module_2.exe"
- fsc cfg "%s -a --standalone -r:test_two_fsharp_modules_module_1.dll -o:test_two_fsharp_modules_module_2_as_dll.dll -g" cfg.fsc_flags ["test_two_fsharp_modules_module_2.fs"]
+ fsc cfg "%s -a --langversion:5.0 --mlcompatibility --standalone -r:test_two_fsharp_modules_module_1.dll -o:test_two_fsharp_modules_module_2_as_dll.dll -g" cfg.fsc_flags ["test_two_fsharp_modules_module_2.fs"]
peverify cfg "test_two_fsharp_modules_module_2_as_dll.dll"
#endif
@@ -2152,7 +2152,7 @@ module RegressionTests =
let ``struct-tuple-bug-1-FSC_OPTIMIZED`` () = singleTestBuildAndRun "regression/struct-tuple-bug-1" FSC_OPTIMIZED
[]
- let ``tuple-bug-1-FSC_OPTIMIZED`` () = singleTestBuildAndRun "regression/tuple-bug-1" FSC_OPTIMIZED
+ let ``tuple-bug-1-FSC_OPTIMIZED`` () = singleTestBuildAndRunVersion "regression/tuple-bug-1" FSC_OPTIMIZED "supports-ml"
[]
let ``12383-FSC_OPTIMIZED`` () = singleTestBuildAndRun "regression/12383" FSC_OPTIMIZED
@@ -2262,10 +2262,10 @@ module RegressionTests =
#endif
[]
- let ``26`` () = singleTestBuildAndRun "regression/26" FSC_OPTIMIZED
+ let ``26`` () = singleTestBuildAndRunVersion "regression/26" FSC_OPTIMIZED "supports-ml"
[]
- let ``321`` () = singleTestBuildAndRun "regression/321" FSC_OPTIMIZED
+ let ``321`` () = singleTestBuildAndRunVersion "regression/321" FSC_OPTIMIZED "supports-ml"
#if !NETCOREAPP
// This test is disabled in coreclr builds dependent on fixing : https://github.com/dotnet/fsharp/issues/2600
@@ -2273,11 +2273,11 @@ module RegressionTests =
let ``655`` () =
let cfg = testConfig "regression/655"
- fsc cfg "%s -a -o:pack.dll" cfg.fsc_flags ["xlibC.ml"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility -a -o:pack.dll" cfg.fsc_flags ["xlibC.ml"]
peverify cfg "pack.dll"
- fsc cfg "%s -o:test.exe -r:pack.dll" cfg.fsc_flags ["main.fs"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility -o:test.exe -r:pack.dll" cfg.fsc_flags ["main.fs"]
peverify cfg "test.exe"
@@ -2292,7 +2292,7 @@ module RegressionTests =
let ``656`` () =
let cfg = testConfig "regression/656"
- fsc cfg "%s -o:pack.exe" cfg.fsc_flags ["misc.fs mathhelper.fs filehelper.fs formshelper.fs plot.fs traj.fs playerrecord.fs trackedplayers.fs form.fs"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility -o:pack.exe" cfg.fsc_flags ["misc.fs mathhelper.fs filehelper.fs formshelper.fs plot.fs traj.fs playerrecord.fs trackedplayers.fs form.fs"]
peverify cfg "pack.exe"
#endif
@@ -2300,22 +2300,22 @@ module RegressionTests =
#if !NETCOREAPP
// Requires WinForms
[]
- let ``83`` () = singleTestBuildAndRun "regression/83" FSC_OPTIMIZED
+ let ``83`` () = singleTestBuildAndRunVersion "regression/83" FSC_OPTIMIZED "supports-ml"
[]
- let ``84`` () = singleTestBuildAndRun "regression/84" FSC_OPTIMIZED
+ let ``84`` () = singleTestBuildAndRunVersion "regression/84" FSC_OPTIMIZED "supports-ml"
[]
let ``85`` () =
let cfg = testConfig "regression/85"
- fsc cfg "%s -r:Category.dll -a -o:petshop.dll" cfg.fsc_flags ["Category.ml"]
+ fsc cfg "%s --langversion:5.0 --mlcompatibility -r:Category.dll -a -o:petshop.dll" cfg.fsc_flags ["Category.ml"]
peverify cfg "petshop.dll"
#endif
[]
- let ``86`` () = singleTestBuildAndRun "regression/86" FSC_OPTIMIZED
+ let ``86`` () = singleTestBuildAndRunVersion "regression/86" FSC_OPTIMIZED "supports-ml"
[]
let ``struct-tuple-bug-1-FSI`` () = singleTestBuildAndRun "regression/struct-tuple-bug-1" FSI
@@ -2472,7 +2472,7 @@ module TypecheckTests =
SingleTest.singleTestBuildAndRunWithCopyDlls cfg "full-rank-arrays.dll" FSC_OPTIMIZED
[]
- let misc () = singleTestBuildAndRun "typecheck/misc" FSC_OPTIMIZED
+ let misc () = singleTestBuildAndRunVersion "typecheck/misc" FSC_OPTIMIZED "supports-ml"
#if !NETCOREAPP
@@ -2697,7 +2697,7 @@ module TypecheckTests =
[]
let ``sigs pos01a`` () =
let cfg = testConfig "typecheck/sigs"
- fsc cfg "%s -a -o:pos01a.dll" cfg.fsc_flags ["pos01a.fsi"; "pos01a.fs"]
+ fsc cfg "%s -a --langversion:5.0 --mlcompatibility -o:pos01a.dll" cfg.fsc_flags ["pos01a.fsi"; "pos01a.fs"]
peverify cfg "pos01a.dll"
[]
@@ -2715,10 +2715,10 @@ module TypecheckTests =
let ``type check neg01`` () = singleNegTest (testConfig "typecheck/sigs") "neg01"
[]
- let ``type check neg02`` () = singleNegTest (testConfig "typecheck/sigs") "neg02"
+ let ``type check neg02`` () = singleVersionedNegTest (testConfig "typecheck/sigs") "6.0" "neg02"
[]
- let ``type check neg03`` () = singleNegTest (testConfig "typecheck/sigs") "neg03"
+ let ``type check neg03`` () = singleVersionedNegTest (testConfig "typecheck/sigs") "supports-ml*" "neg03"
[]
let ``type check neg04`` () = singleNegTest (testConfig "typecheck/sigs") "neg04"
@@ -3103,7 +3103,10 @@ module TypecheckTests =
let ``type check neg118`` () = singleNegTest (testConfig "typecheck/sigs") "neg118"
[]
- let ``type check neg119`` () = singleNegTest (testConfig "typecheck/sigs") "neg119"
+ let ``type check neg119a`` () = singleVersionedNegTest (testConfig "typecheck/sigs") "6.0" "neg119a"
+
+ []
+ let ``type check neg119b`` () = singleVersionedNegTest (testConfig "typecheck/sigs") "7.0" "neg119b"
[]
let ``type check neg120`` () = singleNegTest (testConfig "typecheck/sigs") "neg120"
diff --git a/tests/fsharp/typecheck/sigs/neg02.vsbsl b/tests/fsharp/typecheck/sigs/neg02.vsbsl
index 914fb1c02a6..46e4ce5cb46 100644
--- a/tests/fsharp/typecheck/sigs/neg02.vsbsl
+++ b/tests/fsharp/typecheck/sigs/neg02.vsbsl
@@ -5,6 +5,6 @@ neg02.fs(6,8,6,15): parse error FS0010: Unexpected identifier in member definiti
neg02.fs(17,21,17,26): typecheck error FS3351: Feature 'static abstract interface members' is not supported by target runtime.
-neg02.fs(17,21,17,26): typecheck error FS3350: Feature 'static abstract interface members' is not available in F# 6.0. Please use language version 'PREVIEW' or greater.
+neg02.fs(17,21,17,26): typecheck error FS3350: Feature 'static abstract interface members' is not available in F# 6.0. Please use language version 7.0 or greater.
neg02.fs(17,21,17,24): typecheck error FS0855: No abstract or interface member was found that corresponds to this override
diff --git a/tests/fsharp/typecheck/sigs/neg116.bsl b/tests/fsharp/typecheck/sigs/neg116.bsl
index 9bd22489ddc..5acda959ee3 100644
--- a/tests/fsharp/typecheck/sigs/neg116.bsl
+++ b/tests/fsharp/typecheck/sigs/neg116.bsl
@@ -1,10 +1,10 @@
-neg116.fs(10,44,10,45): typecheck error FS0043: No overloads match for method 'op_Multiply'.
+neg116.fs(10,34,10,47): ilxgen error FS0041: No overloads match for method 'op_Multiply'.
-Known return type: ^a
+Known return type: 'a
-Known type parameters: < float , Polynomial >
+Known type parameters: < Microsoft.FSharp.Core.float , Neg116.Polynomial >
Available overloads:
- - static member Polynomial.( * ) : s: Complex * p: Polynomial -> Polynomial // Argument 's' doesn't match
- - static member Polynomial.( * ) : s: decimal * p: Polynomial -> Polynomial // Argument 's' doesn't match
+ - static member Neg116.Polynomial.( * ) : s: Microsoft.FSharp.Core.decimal * p: Neg116.Polynomial -> Neg116.Polynomial // Argument 's' doesn't match
+ - static member Neg116.Polynomial.( * ) : s: Neg116.Complex * p: Neg116.Polynomial -> Neg116.Polynomial // Argument 's' doesn't match
diff --git a/tests/fsharp/typecheck/sigs/neg119.bsl b/tests/fsharp/typecheck/sigs/neg119a.bsl
similarity index 80%
rename from tests/fsharp/typecheck/sigs/neg119.bsl
rename to tests/fsharp/typecheck/sigs/neg119a.bsl
index ffd7087e301..58a84ff82a8 100644
--- a/tests/fsharp/typecheck/sigs/neg119.bsl
+++ b/tests/fsharp/typecheck/sigs/neg119a.bsl
@@ -1,5 +1,5 @@
-neg119.fs(40,20,40,22): typecheck error FS0071: Type constraint mismatch when applying the default type 'obj' for a type inference variable. No overloads match for method 'Return'.
+neg119a.fs(40,20,40,22): typecheck error FS0071: Type constraint mismatch when applying the default type 'obj' for a type inference variable. No overloads match for method 'Return'.
Known return type: ((int -> int -> int) -> obj)
diff --git a/tests/fsharp/typecheck/sigs/neg119.fs b/tests/fsharp/typecheck/sigs/neg119a.fs
similarity index 100%
rename from tests/fsharp/typecheck/sigs/neg119.fs
rename to tests/fsharp/typecheck/sigs/neg119a.fs
diff --git a/tests/fsharp/typecheck/sigs/neg119b.bsl b/tests/fsharp/typecheck/sigs/neg119b.bsl
new file mode 100644
index 00000000000..e5edc502670
--- /dev/null
+++ b/tests/fsharp/typecheck/sigs/neg119b.bsl
@@ -0,0 +1,4 @@
+
+neg119b.fs(40,9,40,17): typecheck error FS0030: Value restriction. The value 'res2n3n4' has been inferred to have generic type
+ val res2n3n4: ^_a when (^_b or Applicatives.ZipList or ^_a) : (static member (<*>) : ^_b * Applicatives.ZipList -> ^_a) and (^_c or obj or ^_b) : (static member (<*>) : ^_c * obj -> ^_b) and (Applicatives.Ap or ^_c) : (static member Return: ^_c * Applicatives.Ap -> ((int -> int -> int) -> ^_c))
+Either define 'res2n3n4' as a simple data term, make it a function with explicit arguments or, if you do not intend for it to be generic, add a type annotation.
diff --git a/tests/fsharp/typecheck/sigs/neg119b.fs b/tests/fsharp/typecheck/sigs/neg119b.fs
new file mode 100644
index 00000000000..46d64d49395
--- /dev/null
+++ b/tests/fsharp/typecheck/sigs/neg119b.fs
@@ -0,0 +1,40 @@
+module Neg119
+
+// This is an example provided by Gustavo Leon in https://github.com/dotnet/fsharp/pull/4173
+// The code is potentially valid and, if that PR had been accepted, would compile.
+// It's being added as a negative test case to capture the fact that it currently
+// fails to compile.
+
+module Applicatives =
+ open System
+
+ type Ap = Ap with
+ static member inline Invoke (x:'T) : '``Applicative<'T>`` =
+ let inline call (mthd : ^M, output : ^R) = ((^M or ^R) : (static member Return: _*_ -> _) output, mthd)
+ call (Ap, Unchecked.defaultof<'``Applicative<'T>``>) x
+ static member inline InvokeOnInstance (x:'T) = (^``Applicative<'T>`` : (static member Return: ^T -> ^``Applicative<'T>``) x)
+ static member inline Return (r:'R , _:obj) = Ap.InvokeOnInstance :_ -> 'R
+ static member Return (_:seq<'a> , Ap ) = fun x -> Seq.singleton x : seq<'a>
+ static member Return (_:Tuple<'a>, Ap ) = fun x -> Tuple x : Tuple<'a>
+ static member Return (_:'r -> 'a , Ap ) = fun k _ -> k : 'a -> 'r -> _
+
+ let inline result (x:'T) = Ap.Invoke x
+
+ let inline (<*>) (f:'``Applicative<'T->'U>``) (x:'``Applicative<'T>``) : '``Applicative<'U>`` =
+ (( ^``Applicative<'T->'U>`` or ^``Applicative<'T>`` or ^``Applicative<'U>``) : (static member (<*>): _*_ -> _) f, x)
+
+ let inline (+) (a:'Num) (b:'Num) :'Num = a + b
+
+ type ZipList<'s> = ZipList of 's seq with
+ static member Return (x:'a) = ZipList (Seq.initInfinite (fun _ -> x))
+ static member (<*>) (ZipList (f:seq<'a->'b>), ZipList x) = ZipList (Seq.zip f x |> Seq.map (fun (f, x) -> f x)) :ZipList<'b>
+
+ type Ii = Ii
+ type Idiomatic = Idiomatic with
+ static member inline ($) (Idiomatic, si) = fun sfi x -> (Idiomatic $ x) (sfi <*> si)
+ static member ($) (Idiomatic, Ii) = id
+ let inline idiomatic a b = (Idiomatic $ b) a
+ let inline iI x = (idiomatic << result) x
+
+ let res1n2n3 = iI (+) (result 0M ) (ZipList [1M;2M;3M]) Ii
+ let res2n3n4 = iI (+) (result LanguagePrimitives.GenericOne) (ZipList [1 ;2 ;3 ]) Ii
diff --git a/tests/fsharpqa/Source/CompilerOptions/fsc/langversion/langversionhelp.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsc/langversion/langversionhelp.437.1033.bsl
index d8234d15843..2e3e65520ac 100644
--- a/tests/fsharpqa/Source/CompilerOptions/fsc/langversion/langversionhelp.437.1033.bsl
+++ b/tests/fsharpqa/Source/CompilerOptions/fsc/langversion/langversionhelp.437.1033.bsl
@@ -6,4 +6,5 @@ latestmajor
4.6
4.7
5.0
-6.0 (Default)
\ No newline at end of file
+6.0
+7.0 (Default)
\ No newline at end of file
diff --git a/tests/fsharpqa/Source/CompilerOptions/fsi/langversion/langversionhelp.437.1033.bsl b/tests/fsharpqa/Source/CompilerOptions/fsi/langversion/langversionhelp.437.1033.bsl
index d8234d15843..2e3e65520ac 100644
--- a/tests/fsharpqa/Source/CompilerOptions/fsi/langversion/langversionhelp.437.1033.bsl
+++ b/tests/fsharpqa/Source/CompilerOptions/fsi/langversion/langversionhelp.437.1033.bsl
@@ -6,4 +6,5 @@ latestmajor
4.6
4.7
5.0
-6.0 (Default)
\ No newline at end of file
+6.0
+7.0 (Default)
\ No newline at end of file
diff --git a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ComputationExpressions/env.lst b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ComputationExpressions/env.lst
index ad4c32d6e78..238632d2bc7 100644
--- a/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ComputationExpressions/env.lst
+++ b/tests/fsharpqa/Source/Conformance/Expressions/DataExpressions/ComputationExpressions/env.lst
@@ -1,6 +1,6 @@
- SOURCE=CombineResults01.fs SCFLAGS=-a # CombineResults01.fs
- SOURCE=ForLoop01.fs # ForLoop01.fs
- SOURCE=Regressions01.fs # Regressions01.fs
+ SOURCE=CombineResults01.fs SCFLAGS=-a --langversion:5.0 --mlcompatibility # CombineResults01.fs
+ SOURCE=ForLoop01.fs SCFLAGS=--langversion:5.0 --mlcompatibility # ForLoop01.fs
+ SOURCE=Regressions01.fs SCFLAGS=--langversion:5.0 --mlcompatibility # Regressions01.fs
SOURCE=MinMaxValuesInLoop01.fs # MinMaxValuesInLoop01.fs
SOURCE=MinMaxValuesInLoop02.fs # MinMaxValuesInLoop02.fs
diff --git a/tests/fsharpqa/Source/Conformance/ImplementationFilesAndSignatureFiles/NamespacesFragmentsAndImplementationFiles/global/env.lst b/tests/fsharpqa/Source/Conformance/ImplementationFilesAndSignatureFiles/NamespacesFragmentsAndImplementationFiles/global/env.lst
index 7ca75fe1902..1e785f64c22 100644
--- a/tests/fsharpqa/Source/Conformance/ImplementationFilesAndSignatureFiles/NamespacesFragmentsAndImplementationFiles/global/env.lst
+++ b/tests/fsharpqa/Source/Conformance/ImplementationFilesAndSignatureFiles/NamespacesFragmentsAndImplementationFiles/global/env.lst
@@ -2,7 +2,7 @@ NoMT SOURCE=FSharpImportCSharp.fs PRECMD="\$CSC_PIPE /t:library CSharpDll.cs" SC
SOURCE=MiscNegativeTests.fs SCFLAGS="--test:ErrorRanges" # MiscNegativeTests.fs
SOURCE=AsPrefix.fsx SCFLAGS="--test:ErrorRanges" # AsPrefix.fsx
- SOURCE=E_Abbreviation.fsx SCFLAGS="--test:ErrorRanges" # E_Abbreviation.fsx
+ SOURCE=E_Abbreviation.fsx SCFLAGS="--langversion:5.0 --test:ErrorRanges" # E_Abbreviation.fsx
SOURCE=E_AsATypeInFunctionDecl.fsx SCFLAGS="--test:ErrorRanges" # E_AsATypeInFunctionDecl.fsx
SOURCE=E_AsModuleName.fsx SCFLAGS="--test:ErrorRanges" # E_AsModuleName.fsx
diff --git a/tests/fsharpqa/Source/Conformance/InferenceProcedures/NameResolution/RequireQualifiedAccess/env.lst b/tests/fsharpqa/Source/Conformance/InferenceProcedures/NameResolution/RequireQualifiedAccess/env.lst
index 69673ec37a1..ee88eeb11ef 100644
--- a/tests/fsharpqa/Source/Conformance/InferenceProcedures/NameResolution/RequireQualifiedAccess/env.lst
+++ b/tests/fsharpqa/Source/Conformance/InferenceProcedures/NameResolution/RequireQualifiedAccess/env.lst
@@ -9,4 +9,4 @@
SOURCE=OnRecordVsUnion_NoRQA.fs # OnRecordVsUnion_NoRQA.fs
SOURCE=OnRecordVsUnion_NoRQA2.fs # OnRecordVsUnion_NoRQA2.fs
SOURCE=OnUnionWithCaseOfSameName.fs # OnUnionWithCaseOfSameName.fs
- SOURCE=OnUnionWithCaseOfSameName2.fs # OnUnionWithCaseOfSameName2.fs
+ SOURCE=OnUnionWithCaseOfSameName2.fs SCFLAGS=--langversion:6.0 # OnUnionWithCaseOfSameName2.fs
diff --git a/tests/fsharpqa/Source/Conformance/LexicalFiltering/HashLight/env.lst b/tests/fsharpqa/Source/Conformance/LexicalFiltering/HashLight/env.lst
index b8388cdb3f3..defbbf4e3b9 100644
--- a/tests/fsharpqa/Source/Conformance/LexicalFiltering/HashLight/env.lst
+++ b/tests/fsharpqa/Source/Conformance/LexicalFiltering/HashLight/env.lst
@@ -5,14 +5,14 @@
#####
- SOURCE=indent_off_01.fs SCFLAGS="--warnaserror --mlcompatibility" # indent_off_01.fs
- SOURCE=indent_off_01.fsi # indent_off_01.fsi
- SOURCE=indent_off_01.fsx # indent_off_01.fsx
- SOURCE=indent_off_01.fsscript # indent_off_01.fsscript
- SOURCE=indent_off_after_comment01.fs SCFLAGS="-a --warnaserror --mlcompatibility" # indent_off_after_comment01.fs
+ SOURCE=indent_off_01.fs SCFLAGS=--langversion:5.0 --mlcompatibility # indent_off_01.fs
+ SOURCE=indent_off_01.fsi SCFLAGS=--langversion:5.0 --mlcompatibility # indent_off_01.fsi
+ SOURCE=indent_off_01.fsx SCFLAGS=--langversion:5.0 --mlcompatibility # indent_off_01.fsx
+ SOURCE=indent_off_01.fsscript SCFLAGS=--langversion:5.0 --mlcompatibility # indent_off_01.fsscript
+ SOURCE=indent_off_after_comment01.fs SCFLAGS="-a --langversion:5.0 --mlcompatibility" # indent_off_after_comment01.fs
SOURCE=First_Non_Comment_Text01.fs # First_Non_Comment_Text01.fs
- SOURCE=light_off_01.fs SCFLAGS="--warnaserror --mlcompatibility" # light_off_01.fs
+ SOURCE=light_off_01.fs SCFLAGS="--warnaserror --mlcompatibility --langversion:5.0" # light_off_01.fs
NoMT SOURCE=default_in_fsi01.fs COMPILE_ONLY=1 FSIMODE=PIPE # default_in_fsi01.fs
NoMT SOURCE=default_in_fsi02.fs COMPILE_ONLY=1 FSIMODE=EXEC # default_in_fsi02.fs
diff --git a/tests/fsharpqa/Source/Diagnostics/NONTERM/env.lst b/tests/fsharpqa/Source/Diagnostics/NONTERM/env.lst
index a6aa35ba77f..676d5fb9969 100644
--- a/tests/fsharpqa/Source/Diagnostics/NONTERM/env.lst
+++ b/tests/fsharpqa/Source/Diagnostics/NONTERM/env.lst
@@ -17,11 +17,11 @@ NoMT SOURCE=fileModuleImpl03b.fs FSIMODE=PIPE COMPILE_ONLY=1 # fileModuleImpl
SOURCE=typ01.fs SCFLAGS="--test:ErrorRanges" # typ01.fs
SOURCE=typ01b.fs SCFLAGS="--test:ErrorRanges" # typ01b.fs
- SOURCE=quoteExpr01.fs SCFLAGS="--test:ErrorRanges" # quoteExpr01.fs
- SOURCE=quoteExpr01b.fs SCFLAGS="--test:ErrorRanges" # quoteExpr01b.fs
+ SOURCE=quoteExpr01.fs SCFLAGS="--langversion:5.0 --mlcompatibility --test:ErrorRanges" # quoteExpr01.fs
+ SOURCE=quoteExpr01b.fs SCFLAGS="--langversion:5.0 --mlcompatibility --test:ErrorRanges" # quoteExpr01b.fs
- SOURCE=braceExpr01.fs SCFLAGS="--test:ErrorRanges" # braceExpr01.fs
- SOURCE=braceExpr01b.fs SCFLAGS="--test:ErrorRanges" # braceExpr01b.fs
+ SOURCE=braceExpr01.fs SCFLAGS="--langversion:5.0 --mlcompatibility --test:ErrorRanges" # braceExpr01.fs
+ SOURCE=braceExpr01b.fs SCFLAGS="--langversion:5.0 --mlcompatibility --test:ErrorRanges" # braceExpr01b.fs
SOURCE=fileModuleImpl01.fs SCFLAGS="--test:ErrorRanges" # fileModuleImpl01.fs
@@ -32,8 +32,6 @@ NoMT SOURCE=fileModuleImpl03b.fs FSIMODE=PIPE COMPILE_ONLY=1 # fileModuleImpl
SOURCE=typedSeqExprBlock01.fs SCFLAGS="--test:ErrorRanges" # typedSeqExprBlock01.fs
SOURCE=typedSeqExprBlock02.fs SCFLAGS="--test:ErrorRanges" # typedSeqExprBlock02.fs
- SOURCE=declExpr01.fs SCFLAGS="--test:ErrorRanges" # declExpr01.fs
-
SOURCE=interactiveExprOrDefinitionsTerminator01.fs SCFLAGS="--test:ErrorRanges" # interactiveExprOrDefinitionsTerminator01.fs
SOURCE=interactiveExprOrDefinitionsTerminator02.fs SCFLAGS="--test:ErrorRanges" # interactiveExprOrDefinitionsTerminator02.fs
SOURCE=interactiveExprOrDefinitionsTerminator03.fs SCFLAGS="--test:ErrorRanges" # interactiveExprOrDefinitionsTerminator03.fs
@@ -47,15 +45,16 @@ NoMT SOURCE=fileModuleImpl03b.fs FSIMODE=PIPE COMPILE_ONLY=1 # fileModuleImpl
# This is an artifact to deal with the current harness: there is not reason we could not do 1 verification at once...
SOURCE=fileModuleImpl01b.fs SCFLAGS="--nowarn:62" # fileModuleImpl01b.fs
- SOURCE=monadicExprNonEmptyInitial01b.fs # monadicExprNonEmptyInitial01b.fs
+ SOURCE=monadicExprNonEmptyInitial01b.fs # monadicExprNonEmptyInitial01b.fs
SOURCE=monadicPatternClauses01b.fs # monadicPatternClauses01b.fs
- SOURCE=typedSeqExprBlock01b.fs # typedSeqExprBlock01b.fs
+ SOURCE=typedSeqExprBlock01b.fs SCFLAGS="--langversion:5.0 --mlcompatibility" # typedSeqExprBlock01b.fs
SOURCE=typedSeqExprBlock02b.fs # typedSeqExprBlock02b.fs
- SOURCE=declExpr01b.fs SCFLAGS="--test:ErrorRanges" # declExpr01b.fs
+ SOURCE=declExpr01.fs SCFLAGS="--test:ErrorRanges" # declExpr01.fs
+ SOURCE=declExpr01b.fs SCFLAGS="--langversion:5.0 --mlcompatibility --test:ErrorRanges" # declExpr01b.fs
- SOURCE=interactiveExprOrDefinitionsTerminator01b.fs # interactiveExprOrDefinitionsTerminator01b.fs
+ SOURCE=interactiveExprOrDefinitionsTerminator01b.fs # interactiveExprOrDefinitionsTerminator01b.fs
SOURCE=interactiveExprOrDefinitionsTerminator02b.fs SCFLAGS="--test:ErrorRanges" # interactiveExprOrDefinitionsTerminator02b.fs
SOURCE=interactiveExprOrDefinitionsTerminator03b.fs SCFLAGS="--test:ErrorRanges" # interactiveExprOrDefinitionsTerminator03b.fs
SOURCE=interactiveExprOrDefinitionsTerminator04b.fs SCFLAGS="--test:ErrorRanges" # interactiveExprOrDefinitionsTerminator04b.fs
diff --git a/tests/fsharpqa/Source/InteractiveSession/Misc/E_load_badextension.fsx b/tests/fsharpqa/Source/InteractiveSession/Misc/E_load_badextension.fsx
index 09e5e6cc62a..1e8cc8b61e3 100644
--- a/tests/fsharpqa/Source/InteractiveSession/Misc/E_load_badextension.fsx
+++ b/tests/fsharpqa/Source/InteractiveSession/Misc/E_load_badextension.fsx
@@ -2,4 +2,4 @@
()
-//The file extension of '.+\\dummy\.txt' is not recognized\. Source files must have extension \.fs, \.fsi, \.fsx, \.fsscript, \.ml or \.mli\.$
\ No newline at end of file
+//The file extension of '.+\\dummy\.txt' is not recognized\. Source files must have extension \.fs, \.fsi, \.fsx or \.fsscript$
\ No newline at end of file
diff --git a/tests/service/Common.fs b/tests/service/Common.fs
index b683dd9dce1..fe50b7b5a8e 100644
--- a/tests/service/Common.fs
+++ b/tests/service/Common.fs
@@ -184,6 +184,7 @@ let parseAndCheckScriptWithOptions (file:string, input, opts) =
let parseAndCheckScript (file, input) = parseAndCheckScriptWithOptions (file, input, [| |])
let parseAndCheckScript50 (file, input) = parseAndCheckScriptWithOptions (file, input, [| "--langversion:5.0" |])
+let parseAndCheckScript70 (file, input) = parseAndCheckScriptWithOptions (file, input, [| "--langversion:7.0" |])
let parseAndCheckScriptPreview (file, input) = parseAndCheckScriptWithOptions (file, input, [| "--langversion:preview" |])
let parseSourceCode (name: string, code: string) =
@@ -355,6 +356,9 @@ let getParseAndCheckResultsPreview (source: string) =
let getParseAndCheckResults50 (source: string) =
parseAndCheckScript50("Test.fsx", source)
+let getParseAndCheckResults70 (source: string) =
+ parseAndCheckScript70("Test.fsx", source)
+
let inline dumpDiagnostics (results: FSharpCheckFileResults) =
results.Diagnostics
diff --git a/tests/service/ExprTests.fs b/tests/service/ExprTests.fs
index 69b4cf1fcb3..428e08d96e1 100644
--- a/tests/service/ExprTests.fs
+++ b/tests/service/ExprTests.fs
@@ -3263,7 +3263,7 @@ let f7() = callXY (C()) (D())
let f8() = callXY (D()) (C())
"""
- let createOptions() = createOptionsAux [fileSource1] ["--langversion:preview"]
+ let createOptions() = createOptionsAux [fileSource1] ["--langversion:7.0"]
[]
let ``Test ProjectForWitnesses1`` () =
@@ -3387,7 +3387,7 @@ type MyNumberWrapper =
{ MyNumber: MyNumber }
"""
- let createOptions() = createOptionsAux [fileSource1] ["--langversion:preview"]
+ let createOptions() = createOptionsAux [fileSource1] ["--langversion:7.0"]
[]
let ``Test ProjectForWitnesses2`` () =
@@ -3442,11 +3442,11 @@ let s2 = sign p1
"""
- let createOptions() = createOptionsAux [fileSource1] ["--langversion:preview"]
+ let createOptions() = createOptionsAux [fileSource1] ["--langversion:7.0"]
[]
let ``Test ProjectForWitnesses3`` () =
- let cleanup, options = createOptionsAux [ ProjectForWitnesses3.fileSource1 ] ["--langversion:preview"]
+ let cleanup, options = createOptionsAux [ ProjectForWitnesses3.fileSource1 ] ["--langversion:7.0"]
use _holder = cleanup
let exprChecker = FSharpChecker.Create(keepAssemblyContents=true)
let wholeProjectResults = exprChecker.ParseAndCheckProject(options) |> Async.RunImmediate
@@ -3536,7 +3536,7 @@ let isNullQuoted (ts : 't[]) =
"""
- let createOptions() = createOptionsAux [fileSource1] ["--langversion:preview"]
+ let createOptions() = createOptionsAux [fileSource1] ["--langversion:7.0"]
[]
let ``Test ProjectForWitnesses4 GetWitnessPassingInfo`` () =
diff --git a/tests/service/PatternMatchCompilationTests.fs b/tests/service/PatternMatchCompilationTests.fs
index 9ca4362ead7..4e56b7672e2 100644
--- a/tests/service/PatternMatchCompilationTests.fs
+++ b/tests/service/PatternMatchCompilationTests.fs
@@ -370,7 +370,7 @@ match A with
[]
let ``As 01 - names and wildcards`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
match 1 with
| _ as w -> let x = w + 1 in ()
@@ -389,7 +389,7 @@ match 3 with
[]
#endif
let ``As 02 - type testing`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let (|Id|) = id
match box 1 with
| :? int as a -> let b = a + 1 in ()
@@ -414,7 +414,7 @@ match box 1 with
[]
#endif
let ``As 03 - impossible type testing`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
match Unchecked.defaultof with
| :? System.Enum as (:? System.ConsoleKey as a) -> let b = a + enum 1 in ()
| :? System.Enum as (:? System.ConsoleKey as c) -> let d = c + enum 1 in ()
@@ -432,7 +432,7 @@ match Unchecked.defaultof with
[]
#endif
let ``As 04 - duplicate type testing`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
match Unchecked.defaultof with
| :? System.Enum as (a & b) -> let c = a = b in ()
| :? System.Enum as (:? System.ConsoleKey as (d & e)) -> let f = d + e + enum 1 in ()
@@ -448,7 +448,7 @@ match Unchecked.defaultof with
[]
#endif
let ``As 05 - inferred type testing`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
match Unchecked.defaultof with
| :? _ as a -> let _ = a in ()
@@ -463,7 +463,7 @@ match Unchecked.defaultof with
[]
let ``As 06 - completeness`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
match Unchecked.defaultof with
| true as a -> if a then ()
| b as false -> if not b then ()
@@ -532,7 +532,7 @@ parenPattern:
| parenPattern COLON_COLON parenPattern
| constrPattern
*)
- let _, checkResults = getParseAndCheckResultsPreview $"""
+ let _, checkResults = getParseAndCheckResults70 $"""
let eq<'T> (x:'T option) = () // FS-1093-safe type assert function
let (|Id0|) = ignore
let (|Id1|) = id
@@ -563,7 +563,7 @@ Some v |> eq
[]
#endif
let ``As 08 - syntactical precedence matrix testing right - partial patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let eq<'T> (x:'T option) = () // FS-1093-safe type assert function
let (|Unit1|_|) x = if System.Random().NextDouble() < 0.5 then Some Unit1 else None
let (|Unit2|_|) _ = (|Unit1|_|)
@@ -623,7 +623,7 @@ Some w |> eq
[]
#endif
let ``As 09 - syntactical precedence matrix testing right - erroneous patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let (|DefinedPattern|) = id
let a as 1 = true
let b as true = 2
@@ -667,7 +667,7 @@ let z as
[]
let ``As 10 - syntactical precedence matrix testing left - total patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview $"""
+ let _, checkResults = getParseAndCheckResults70 $"""
let eq<'T> (x:'T option) = () // FS-1093-safe type assert function
let (|Id0|) = ignore
let (|Id1|) = id
@@ -699,7 +699,7 @@ Some x |> eq
[]
#endif
let ``As 11 - syntactical precedence matrix testing left - partial patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let eq<'T> (x:'T option) = () // FS-1093-safe type assert function
let (|Unit1|_|) x = if System.Random().NextDouble() < 0.5 then Some Unit1 else None
let (|Unit2|_|) _ = (|Unit1|_|)
@@ -759,7 +759,7 @@ Some w |> eq
[]
#endif
let ``As 12 - syntactical precedence matrix testing left - erroneous patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let (|DefinedPattern|) = id
let 1 as a = true
let true as b = 2
@@ -810,7 +810,7 @@ let z as =
[]
#endif
let ``As 13 - syntactical precedence matrix testing right with type tests - total patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview $"""
+ let _, checkResults = getParseAndCheckResults70 $"""
let eq<'T> (x:'T option) = () // FS-1093-safe type assert function
let (|Id0|) = ignore
let (|Id1|) = id
@@ -874,7 +874,7 @@ Some x |> eq
[]
#endif
let ``As 14 - syntactical precedence matrix testing right with type tests - partial patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let eq<'T> (x:'T option) = () // FS-1093-safe type assert function
let (|Unit1|_|) x = if System.Random().NextDouble() < 0.5 then Some Unit1 else None
let (|Unit2|_|) _ = (|Unit1|_|)
@@ -953,7 +953,7 @@ Some w |> eq
[]
#endif
let ``As 15 - syntactical precedence matrix testing right with type tests - erroneous patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let (|DefinedPattern|) = id
let :? a as 1 = true
let :? b as true = 2
@@ -1010,7 +1010,7 @@ let :? z as
#endif
let ``As 16 - syntactical precedence matrix testing left with type tests - total patterns`` () =
let validSet = set { 'a'..'x' } - set [ 'p'; 'q' ] |> Set.map string
- let _, checkResults = getParseAndCheckResultsPreview $"""
+ let _, checkResults = getParseAndCheckResults70 $"""
let eq<'T> (x:'T option) = () // FS-1093-safe type assert function
let (|Id0|) = ignore
let (|Id1|) = id
@@ -1066,7 +1066,7 @@ Some "" |> eq // No more type checks after the above line?
[]
#endif
let ``As 17 - syntactical precedence matrix testing left with type tests - partial patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let eq<'T> (x:'T option) = () // FS-1093-safe type assert function
let (|Unit1|_|) x = if System.Random().NextDouble() < 0.5 then Some Unit1 else None
let (|Unit2|_|) _ = (|Unit1|_|)
@@ -1160,7 +1160,7 @@ Some "" |> eq
[]
#endif
let ``As 18 - syntactical precedence matrix testing left with type tests - erroneous patterns`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
let (|DefinedPattern|) = id
let 1 as :? a = true
let true as :? b = 2
@@ -1219,7 +1219,7 @@ let as :? z =
[]
#endif
let ``As 19 - syntactical precedence matrix testing - valid syntactic patterns that cause type errors later`` () =
- let _, checkResults = getParseAndCheckResultsPreview """
+ let _, checkResults = getParseAndCheckResults70 """
type I() = inherit System.Attribute()
type M() = inherit I()
let 'a'..'b' as c = 'd'