diff --git a/fcs/dependencies/MSBuild.v12.0/MSBuild.v12.0.csproj b/fcs/dependencies/MSBuild.v12.0/MSBuild.v12.0.csproj index b59e15cd058..da7b634cd12 100644 --- a/fcs/dependencies/MSBuild.v12.0/MSBuild.v12.0.csproj +++ b/fcs/dependencies/MSBuild.v12.0/MSBuild.v12.0.csproj @@ -1,7 +1,7 @@ - net45 + net472 MSBuild.v12.0.nuspec diff --git a/setup/Swix/Microsoft.FSharp.Compiler.MSBuild/Microsoft.FSharp.Compiler.MSBuild.csproj b/setup/Swix/Microsoft.FSharp.Compiler.MSBuild/Microsoft.FSharp.Compiler.MSBuild.csproj index cc9d75a2887..a85c837c6bc 100644 --- a/setup/Swix/Microsoft.FSharp.Compiler.MSBuild/Microsoft.FSharp.Compiler.MSBuild.csproj +++ b/setup/Swix/Microsoft.FSharp.Compiler.MSBuild/Microsoft.FSharp.Compiler.MSBuild.csproj @@ -52,7 +52,7 @@ folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp\%(_XlfLanguages file source="$(ArtifactsBinDir)FSharp.Build\$(Configuration)\$(TargetFramework)\%(_XlfLanguages.Identity)\FSharp.Build.resources.dll" file source="$(ArtifactsBinDir)FSharp.Compiler.Interactive.Settings\$(Configuration)\$(TargetFramework)\%(_XlfLanguages.Identity)\FSharp.Compiler.Interactive.Settings.resources.dll" file source="$(ArtifactsBinDir)FSharp.Compiler.Private\$(Configuration)\$(TargetFramework)\%(_XlfLanguages.Identity)\FSharp.Compiler.Private.resources.dll" - file source="$(ArtifactsBinDir)FSharp.Core\$(Configuration)\net45\%(_XlfLanguages.Identity)\FSharp.Core.resources.dll" + file source="$(ArtifactsBinDir)FSharp.Core\$(Configuration)\netstandard2.0\%(_XlfLanguages.Identity)\FSharp.Core.resources.dll" ]]> @@ -95,9 +95,7 @@ folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp" file source="$(BinariesFolder)\FSharp.Compiler.Interactive.Settings\$(Configuration)\$(TargetFramework)\FSharp.Compiler.Interactive.Settings.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2 file source="$(BinariesFolder)\FSharp.Compiler.Private\$(Configuration)\$(TargetFramework)\FSharp.Compiler.Private.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2 file source="$(BinariesFolder)\FSharp.Compiler.Server.Shared\$(Configuration)\$(TargetFramework)\FSharp.Compiler.Server.Shared.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2 - file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2 - file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.optdata" - file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\net45\FSharp.Core.sigdata" + file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\netstandard2.0\FSharp.Core.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2 file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\$(TargetFramework)\FSharp.Build.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2 file source="$(NuGetPackageRoot)\Microsoft.VisualFSharp.Type.Providers.Redist\$(MicrosoftVisualFSharpTypeProvidersRedistVersion)\content\$(FSharpDataTypeProvidersVersion)\FSharp.Data.TypeProviders.dll" file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\$(TargetFramework)\Microsoft.Build.dll" diff --git a/src/fsharp/FSharp.Core.nuget/FSharp.Core.nuget.csproj b/src/fsharp/FSharp.Core.nuget/FSharp.Core.nuget.csproj index b55bc2feba2..00d4b11762b 100644 --- a/src/fsharp/FSharp.Core.nuget/FSharp.Core.nuget.csproj +++ b/src/fsharp/FSharp.Core.nuget/FSharp.Core.nuget.csproj @@ -2,7 +2,7 @@ true - net45;netstandard2.0 + netstandard2.0 FSharp.Core FSharp.Core.nuspec true diff --git a/src/fsharp/FSharp.Core.nuget/FSharp.Core.nuspec b/src/fsharp/FSharp.Core.nuget/FSharp.Core.nuspec index 0d5d1e21dbd..7cfdeab59ee 100644 --- a/src/fsharp/FSharp.Core.nuget/FSharp.Core.nuspec +++ b/src/fsharp/FSharp.Core.nuget/FSharp.Core.nuspec @@ -6,24 +6,15 @@ en-US - - - - - - - - - diff --git a/src/fsharp/FSharp.Core/FSharp.Core.fsproj b/src/fsharp/FSharp.Core/FSharp.Core.fsproj index ef68a28e6d6..d8a9a124dd5 100644 --- a/src/fsharp/FSharp.Core/FSharp.Core.fsproj +++ b/src/fsharp/FSharp.Core/FSharp.Core.fsproj @@ -4,8 +4,7 @@ Library - net45;netstandard2.0 - netstandard2.0 + netstandard2.0 $(NoWarn);45;55;62;75;1204 true $(DefineConstants);FSHARP_CORE @@ -214,17 +213,4 @@ - - - - - - - - - - - - - diff --git a/tests/fsharp/single-test.fs b/tests/fsharp/single-test.fs index 236ef364371..7778d3087e2 100644 --- a/tests/fsharp/single-test.fs +++ b/tests/fsharp/single-test.fs @@ -105,11 +105,7 @@ let generateProjectArtifacts (pc:ProjectConfiguration) outputType (targetFramewo "fsi" else "FSharp.Core" - let targetCore = - if targetFramework.StartsWith("netstandard", StringComparison.InvariantCultureIgnoreCase) || targetFramework.StartsWith("netcoreapp", StringComparison.InvariantCultureIgnoreCase) then - "netstandard2.0" - else - "net45" + let targetCore = "netstandard2.0" (Path.GetFullPath(__SOURCE_DIRECTORY__) + "/../../artifacts/bin/" + compiler + "/" + configuration + "/" + targetCore + "/FSharp.Core.dll") let computeSourceItems addDirectory addCondition (compileItem:CompileItem) sources = diff --git a/tests/fsharp/test-framework.fs b/tests/fsharp/test-framework.fs index cb2418f04c6..ce5d9bb3dfc 100644 --- a/tests/fsharp/test-framework.fs +++ b/tests/fsharp/test-framework.fs @@ -164,7 +164,7 @@ let config configurationName envVars = #if NET472 let fscArchitecture = "net472" let fsiArchitecture = "net472" - let fsharpCoreArchitecture = "net45" + let fsharpCoreArchitecture = "netstandard2.0" let fsharpBuildArchitecture = "net472" let fsharpCompilerInteractiveSettingsArchitecture = "net472" #else @@ -179,8 +179,8 @@ let config configurationName envVars = let artifactsBinPath = artifactsPath ++ "bin" let coreClrRuntimePackageVersion = "3.0.0-preview-27318-01" let csc_flags = "/nologo" - let fsc_flags = "-r:System.Core.dll --nowarn:20 --define:COMPILED" - let fsi_flags = "-r:System.Core.dll --nowarn:20 --define:INTERACTIVE --maxerrors:1 --abortonerror" + let fsc_flags = "-r:System --nowarn:20 --define:COMPILED" + let fsi_flags = "-r:System --nowarn:20 --define:INTERACTIVE --maxerrors:1 --abortonerror" let Is64BitOperatingSystem = WindowsPlatform.Is64BitOperatingSystem envVars let architectureMoniker = if Is64BitOperatingSystem then "x64" else "x86" let CSC = requireFile (packagesDir ++ "Microsoft.Net.Compilers" ++ "2.7.0" ++ "tools" ++ "csc.exe") diff --git a/tests/fsharp/tests.fs b/tests/fsharp/tests.fs index da940132179..9a3c3751206 100644 --- a/tests/fsharp/tests.fs +++ b/tests/fsharp/tests.fs @@ -514,7 +514,7 @@ module CoreTests = peverify cfg "test.dll" - csc cfg """/r:"%s" /reference:test.dll /debug+""" cfg.FSCOREDLLPATH ["testcs.cs"] + csc cfg """/r:"%s" "/r:netstandard.dll" /reference:test.dll /debug+""" cfg.FSCOREDLLPATH ["testcs.cs"] peverify cfg "testcs.exe" @@ -618,13 +618,13 @@ module CoreTests = peverify cfg "lib.dll" - csc cfg """/nologo /r:"%s" /r:System.Core.dll /r:lib.dll /out:test.exe""" cfg.FSCOREDLLPATH ["test.cs"] + csc cfg """/nologo /r:"%s" "/r:netstandard.dll" /r:lib.dll /out:test.exe""" cfg.FSCOREDLLPATH ["test.cs"] fsc cfg """%s -a --doc:lib--optimize.xml -o:lib--optimize.dll -g""" cfg.fsc_flags ["lib.fs"] peverify cfg "lib--optimize.dll" - csc cfg """/nologo /r:"%s" /r:System.Core.dll /r:lib--optimize.dll /out:test--optimize.exe""" cfg.FSCOREDLLPATH ["test.cs"] + csc cfg """/nologo /r:"%s" "/r:netstandard.dll" /r:lib--optimize.dll /out:test--optimize.exe""" cfg.FSCOREDLLPATH ["test.cs"] exec cfg ("." ++ "test.exe") "" @@ -638,9 +638,9 @@ module CoreTests = peverify cfg "lib.dll" - csc cfg """/nologo /target:library /r:"%s" /r:lib.dll /out:lib2.dll /langversion:7.2""" cfg.FSCOREDLLPATH ["lib2.cs"] + csc cfg """/nologo "/r:netstandard.dll" /target:library /r:"%s" /r:lib.dll /out:lib2.dll /langversion:7.2""" cfg.FSCOREDLLPATH ["lib2.cs"] - csc cfg """/nologo /target:library /r:"%s" /out:lib3.dll /langversion:7.2""" cfg.FSCOREDLLPATH ["lib3.cs"] + csc cfg """/nologo "/r:netstandard.dll" /target:library /r:"%s" /out:lib3.dll /langversion:7.2""" cfg.FSCOREDLLPATH ["lib3.cs"] fsc cfg "%s -r:lib.dll -r:lib2.dll -r:lib3.dll -o:test.exe -g" cfg.fsc_flags ["test.fsx"] @@ -656,7 +656,7 @@ module CoreTests = exec cfg ("." ++ "test.exe") "" // Same without the reference to lib.dll - testing an incomplete reference set, but only compiling a subset of the code - fsc cfg "%s -r:System.Runtime.dll --noframework --define:NO_LIB_REFERENCE -r:lib3.dll -r:lib2.dll -o:test.exe -g" cfg.fsc_flags ["test.fsx"] + fsc cfg "%s -r:System.Runtime.dll --define:NO_LIB_REFERENCE -r:lib3.dll -r:lib2.dll -o:test.exe -g" cfg.fsc_flags ["test.fsx"] peverify cfg "test.exe" diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/Decimal01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/Decimal01.il.bsl index d4e75ea07e1..bab6c7c9c3e 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/Decimal01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/Decimal01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 4:8:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Decimal01 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Decimal01 { - // Offset: 0x00000000 Length: 0x0000013F + // Offset: 0x00000000 Length: 0x00000139 } .mresource public FSharpOptimizationData.Decimal01 { - // Offset: 0x00000148 Length: 0x00000050 + // Offset: 0x00000140 Length: 0x00000050 } .module Decimal01.exe -// MVID: {59B19213-F150-FA46-A745-03831392B159} +// MVID: {5D4DD374-F150-FA46-A745-038374D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x002E0000 +// Image base: 0x05950000 // =============== CLASS MEMBERS DECLARATION =================== @@ -66,17 +71,17 @@ // Code size 13 (0xd) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 6,6 : 9,13 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\Misc\\Decimal01.fs' + .line 6,6 : 9,13 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\Misc\\Decimal01.fs' IL_0000: ldc.i4.s 12 IL_0002: ldc.i4.0 IL_0003: ldc.i4.0 IL_0004: ldc.i4.0 IL_0005: ldc.i4.1 - IL_0006: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_0006: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_000b: pop IL_000c: ret } // end of method $Decimal01::main@ diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/Lock01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/Lock01.il.bsl index 641008a218f..f602cda1c94 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/Lock01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/Lock01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 4:8:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Lock01 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Lock01 { - // Offset: 0x00000000 Length: 0x00000184 + // Offset: 0x00000000 Length: 0x0000017E } .mresource public FSharpOptimizationData.Lock01 { // Offset: 0x00000188 Length: 0x00000064 } .module Lock01.exe -// MVID: {59B19213-2BCA-B308-A745-03831392B159} +// MVID: {5D4DD374-2BCA-B308-A745-038374D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x02FB0000 +// Image base: 0x06670000 // =============== CLASS MEMBERS DECLARATION =================== @@ -72,7 +77,7 @@ // Code size 2 (0x2) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 20,20 : 19,21 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\Misc\\Lock01.fs' + .line 20,20 : 19,21 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\Misc\\Lock01.fs' IL_0000: ldnull IL_0001: ret } // end of method clo@20::Invoke @@ -130,8 +135,8 @@ { IL_001a: ldloc.1 IL_001b: ldloca.s V_3 - IL_001d: call void [mscorlib]System.Threading.Monitor::Enter(object, - bool&) + IL_001d: call void [netstandard]System.Threading.Monitor::Enter(object, + bool&) IL_0022: ldloc.2 IL_0023: ldnull IL_0024: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0) @@ -150,7 +155,7 @@ .line 100001,100001 : 0,0 '' IL_0034: ldloc.1 - IL_0035: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0035: call void [netstandard]System.Threading.Monitor::Exit(object) IL_003a: ldnull IL_003b: pop IL_003c: endfinally diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/MethodImplNoInline.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/MethodImplNoInline.il.bsl index 9a2538f734d..d3f67cbcb34 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/MethodImplNoInline.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/MethodImplNoInline.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 4:8:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly MethodImplNoInline { @@ -25,20 +30,20 @@ } .mresource public FSharpSignatureData.MethodImplNoInline { - // Offset: 0x00000000 Length: 0x000002FF + // Offset: 0x00000000 Length: 0x000002F9 } .mresource public FSharpOptimizationData.MethodImplNoInline { - // Offset: 0x00000308 Length: 0x000000F5 + // Offset: 0x00000300 Length: 0x000000F5 } .module MethodImplNoInline.exe -// MVID: {59B19213-4480-09E2-A745-03831392B159} +// MVID: {5D4DD374-4480-09E2-A745-038374D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x00D80000 +// Image base: 0x06DF0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -55,7 +60,7 @@ IL_0000: ldstr "Hey!" IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5::.ctor(string) IL_000a: stloc.0 - IL_000b: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_000b: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_0010: ldloc.0 IL_0011: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/MethodImplNoInline02.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/MethodImplNoInline02.il.bsl index 784e3d51a37..5289d21c4d2 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/MethodImplNoInline02.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/Misc/MethodImplNoInline02.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 4:8:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly MethodImplNoInline02 { @@ -25,20 +30,20 @@ } .mresource public FSharpSignatureData.MethodImplNoInline02 { - // Offset: 0x00000000 Length: 0x00000305 + // Offset: 0x00000000 Length: 0x000002FF } .mresource public FSharpOptimizationData.MethodImplNoInline02 { - // Offset: 0x00000310 Length: 0x000000F9 + // Offset: 0x00000308 Length: 0x000000F9 } .module MethodImplNoInline02.exe -// MVID: {59B19213-084F-1A8E-A745-03831392B159} +// MVID: {5D4DD374-084F-1A8E-A745-038374D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x012C0000 +// Image base: 0x06F40000 // =============== CLASS MEMBERS DECLARATION =================== @@ -55,7 +60,7 @@ IL_0000: ldstr "Hey!" IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5::.ctor(string) IL_000a: stloc.0 - IL_000b: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_000b: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_0010: ldloc.0 IL_0011: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/Operators/comparison_decimal01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/Operators/comparison_decimal01.il.bsl index a30c4a069bd..a765d2e362b 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/Operators/comparison_decimal01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/Operators/comparison_decimal01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 4:8:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly comparison_decimal01 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.comparison_decimal01 { - // Offset: 0x00000000 Length: 0x00000176 + // Offset: 0x00000000 Length: 0x00000170 } .mresource public FSharpOptimizationData.comparison_decimal01 { - // Offset: 0x00000180 Length: 0x0000005B + // Offset: 0x00000178 Length: 0x0000005B } .module comparison_decimal01.exe -// MVID: {59B19240-76D8-7EE3-A745-03834092B159} +// MVID: {5D4DE3C1-76D8-7EE3-A745-0383C1E34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x02980000 +// Image base: 0x06800000 // =============== CLASS MEMBERS DECLARATION =================== @@ -66,29 +71,29 @@ // Code size 228 (0xe4) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 4,4 : 9,20 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\Operators\\comparison_decimal01.fs' + .line 4,4 : 9,20 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\Operators\\comparison_decimal01.fs' IL_0000: ldc.i4.s 10 IL_0002: ldc.i4.0 IL_0003: ldc.i4.0 IL_0004: ldc.i4.0 IL_0005: ldc.i4.1 - IL_0006: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_0006: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_000b: ldc.i4.s 20 IL_000d: ldc.i4.0 IL_000e: ldc.i4.0 IL_000f: ldc.i4.0 IL_0010: ldc.i4.1 - IL_0011: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_0016: call bool [mscorlib]System.Decimal::op_LessThan(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_0011: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_0016: call bool [netstandard]System.Decimal::op_LessThan(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_001b: pop .line 5,5 : 9,21 '' IL_001c: ldc.i4.s 10 @@ -96,23 +101,23 @@ IL_001f: ldc.i4.0 IL_0020: ldc.i4.0 IL_0021: ldc.i4.1 - IL_0022: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_0022: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_0027: ldc.i4.s 20 IL_0029: ldc.i4.0 IL_002a: ldc.i4.0 IL_002b: ldc.i4.0 IL_002c: ldc.i4.1 - IL_002d: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_0032: call bool [mscorlib]System.Decimal::op_LessThanOrEqual(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_002d: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_0032: call bool [netstandard]System.Decimal::op_LessThanOrEqual(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_0037: pop .line 6,6 : 9,20 '' IL_0038: ldc.i4.s 10 @@ -120,23 +125,23 @@ IL_003b: ldc.i4.0 IL_003c: ldc.i4.0 IL_003d: ldc.i4.1 - IL_003e: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_003e: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_0043: ldc.i4.s 20 IL_0045: ldc.i4.0 IL_0046: ldc.i4.0 IL_0047: ldc.i4.0 IL_0048: ldc.i4.1 - IL_0049: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_004e: call bool [mscorlib]System.Decimal::op_GreaterThan(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_0049: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_004e: call bool [netstandard]System.Decimal::op_GreaterThan(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_0053: pop .line 7,7 : 9,21 '' IL_0054: ldc.i4.s 10 @@ -144,23 +149,23 @@ IL_0057: ldc.i4.0 IL_0058: ldc.i4.0 IL_0059: ldc.i4.1 - IL_005a: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_005a: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_005f: ldc.i4.s 20 IL_0061: ldc.i4.0 IL_0062: ldc.i4.0 IL_0063: ldc.i4.0 IL_0064: ldc.i4.1 - IL_0065: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_006a: call bool [mscorlib]System.Decimal::op_GreaterThanOrEqual(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_0065: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_006a: call bool [netstandard]System.Decimal::op_GreaterThanOrEqual(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_006f: pop .line 8,8 : 9,20 '' IL_0070: ldc.i4.s 10 @@ -168,23 +173,23 @@ IL_0073: ldc.i4.0 IL_0074: ldc.i4.0 IL_0075: ldc.i4.1 - IL_0076: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_0076: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_007b: ldc.i4.s 20 IL_007d: ldc.i4.0 IL_007e: ldc.i4.0 IL_007f: ldc.i4.0 IL_0080: ldc.i4.1 - IL_0081: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_0086: call bool [mscorlib]System.Decimal::op_Equality(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_0081: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_0086: call bool [netstandard]System.Decimal::op_Equality(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_008b: pop .line 9,9 : 9,21 '' IL_008c: ldc.i4.s 10 @@ -192,23 +197,23 @@ IL_008f: ldc.i4.0 IL_0090: ldc.i4.0 IL_0091: ldc.i4.1 - IL_0092: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_0092: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_0097: ldc.i4.s 20 IL_0099: ldc.i4.0 IL_009a: ldc.i4.0 IL_009b: ldc.i4.0 IL_009c: ldc.i4.1 - IL_009d: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_00a2: call bool [mscorlib]System.Decimal::op_Equality(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_009d: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_00a2: call bool [netstandard]System.Decimal::op_Equality(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_00a7: ldc.i4.0 IL_00a8: ceq IL_00aa: pop @@ -218,23 +223,23 @@ IL_00ae: ldc.i4.0 IL_00af: ldc.i4.0 IL_00b0: ldc.i4.1 - IL_00b1: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_00b1: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_00b6: ldc.i4.s 20 IL_00b8: ldc.i4.0 IL_00b9: ldc.i4.0 IL_00ba: ldc.i4.0 IL_00bb: ldc.i4.1 - IL_00bc: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_00c1: call bool [mscorlib]System.Decimal::op_Equality(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_00bc: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_00c1: call bool [netstandard]System.Decimal::op_Equality(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_00c6: pop .line 11,11 : 9,26 '' IL_00c7: ldc.i4.s 10 @@ -242,23 +247,23 @@ IL_00ca: ldc.i4.0 IL_00cb: ldc.i4.0 IL_00cc: ldc.i4.1 - IL_00cd: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_00cd: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_00d2: ldc.i4.s 20 IL_00d4: ldc.i4.0 IL_00d5: ldc.i4.0 IL_00d6: ldc.i4.0 IL_00d7: ldc.i4.1 - IL_00d8: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_00dd: call int32 [mscorlib]System.Decimal::Compare(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_00d8: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_00dd: call int32 [netstandard]System.Decimal::Compare(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_00e2: pop IL_00e3: ret } // end of method $Comparison_decimal01::main@ diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.il.bsl index 78bfe96fcc7..37dea79ea67 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Aggregates01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,7 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:5:0:0 + .ver 4:8:0:0 } .assembly extern Utils { @@ -24,6 +24,11 @@ .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. .ver 4:0:0:0 } +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 +} .assembly Linq101Aggregates01 { .custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32, @@ -38,20 +43,20 @@ } .mresource public FSharpSignatureData.Linq101Aggregates01 { - // Offset: 0x00000000 Length: 0x00000614 + // Offset: 0x00000000 Length: 0x00000606 } .mresource public FSharpOptimizationData.Linq101Aggregates01 { - // Offset: 0x00000618 Length: 0x00000211 + // Offset: 0x00000610 Length: 0x00000211 } .module Linq101Aggregates01.exe -// MVID: {5B9A632A-D281-4783-A745-03832A639A5B} +// MVID: {5D4DD376-D281-4783-A745-038376D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x026B0000 +// Image base: 0x072C0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -105,7 +110,7 @@ .locals init ([0] int32 V_0, [1] int32 n) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 100001,100001 : 0,0 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Aggregates01.fs' + .line 100001,100001 : 0,0 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Aggregates01.fs' IL_0000: ldarg.0 IL_0001: ldfld int32 Linq101Aggregates01/uniqueFactors@12::pc IL_0006: ldc.i4.1 @@ -1633,21 +1638,21 @@ IL_0023: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1 class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2::get_Source() IL_0028: stloc.s V_6 IL_002a: ldloc.s V_6 - IL_002c: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_002c: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1 class [netstandard]System.Collections.Generic.IEnumerable`1::GetEnumerator() IL_0031: stloc.s V_7 .try { IL_0033: ldc.i4.0 IL_0034: stloc.s V_9 IL_0036: ldloc.s V_7 - IL_0038: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0038: callvirt instance bool [netstandard]System.Collections.IEnumerator::MoveNext() IL_003d: brfalse.s IL_0055 .line 43,43 : 13,33 '' IL_003f: ldloc.s V_9 IL_0041: ldloc.s V_5 IL_0043: ldloc.s V_7 - IL_0045: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0045: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1::get_Current() IL_004a: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0) IL_004f: add.ovf IL_0050: stloc.s V_9 @@ -1674,7 +1679,7 @@ .line 100001,100001 : 0,0 '' IL_006c: ldloc.s V_10 - IL_006e: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_006e: callvirt instance void [netstandard]System.IDisposable::Dispose() IL_0073: ldnull IL_0074: pop IL_0075: endfinally @@ -3515,8 +3520,8 @@ IL_0001: callvirt instance valuetype [mscorlib]System.Decimal [Utils]Utils/Product::get_UnitPrice() IL_0006: ldarg.0 IL_0007: ldfld valuetype [mscorlib]System.Decimal Linq101Aggregates01/'cheapestProducts@69-1'::min - IL_000c: call bool [mscorlib]System.Decimal::op_Equality(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_000c: call bool [netstandard]System.Decimal::op_Equality(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_0011: ret } // end of method 'cheapestProducts@69-1'::Invoke @@ -5759,8 +5764,8 @@ IL_0001: callvirt instance valuetype [mscorlib]System.Decimal [Utils]Utils/Product::get_UnitPrice() IL_0006: ldarg.0 IL_0007: ldfld valuetype [mscorlib]System.Decimal Linq101Aggregates01/'mostExpensiveProducts@94-1'::maxPrice - IL_000c: call bool [mscorlib]System.Decimal::op_Equality(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_000c: call bool [netstandard]System.Decimal::op_Equality(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_0011: ret } // end of method 'mostExpensiveProducts@94-1'::Invoke @@ -6874,13 +6879,13 @@ .line 100001,100001 : 0,0 '' IL_0035: ldstr "source" - IL_003a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_003a: newobj instance void [netstandard]System.ArgumentNullException::.ctor(string) IL_003f: throw .line 100001,100001 : 0,0 '' IL_0040: nop IL_0041: ldloc.s V_6 - IL_0043: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_0043: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1 class [netstandard]System.Collections.Generic.IEnumerable`1::GetEnumerator() IL_0048: stloc.s V_7 .try { @@ -6889,25 +6894,25 @@ IL_004c: ldc.i4.0 IL_004d: ldc.i4.0 IL_004e: ldc.i4.0 - IL_004f: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) + IL_004f: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) IL_0054: stloc.s V_9 IL_0056: ldc.i4.0 IL_0057: stloc.s V_10 IL_0059: ldloc.s V_7 - IL_005b: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_005b: callvirt instance bool [netstandard]System.Collections.IEnumerator::MoveNext() IL_0060: brfalse.s IL_0082 IL_0062: ldloc.s V_9 IL_0064: ldloc.s V_5 IL_0066: ldloc.s V_7 - IL_0068: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0068: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1::get_Current() IL_006d: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0) - IL_0072: call valuetype [mscorlib]System.Decimal [mscorlib]System.Decimal::op_Addition(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_0072: call valuetype [netstandard]System.Decimal [netstandard]System.Decimal::op_Addition(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_0077: stloc.s V_9 .line 115,115 : 50,71 '' IL_0079: ldloc.s V_10 @@ -6927,7 +6932,7 @@ .line 100001,100001 : 0,0 '' IL_008a: ldstr "source" - IL_008f: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_008f: newobj instance void [netstandard]System.InvalidOperationException::.ctor(string) IL_0094: throw .line 100001,100001 : 0,0 '' @@ -6938,9 +6943,9 @@ IL_009c: stloc.s V_12 IL_009e: ldloc.s V_11 IL_00a0: ldloc.s V_12 - IL_00a2: call valuetype [mscorlib]System.Decimal [mscorlib]System.Convert::ToDecimal(int32) - IL_00a7: call valuetype [mscorlib]System.Decimal [mscorlib]System.Decimal::Divide(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_00a2: call valuetype [netstandard]System.Decimal [netstandard]System.Convert::ToDecimal(int32) + IL_00a7: call valuetype [netstandard]System.Decimal [netstandard]System.Decimal::Divide(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_00ac: stloc.s V_8 IL_00ae: leave.s IL_00ce @@ -6959,7 +6964,7 @@ .line 100001,100001 : 0,0 '' IL_00c1: ldloc.s V_13 - IL_00c3: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00c3: callvirt instance void [netstandard]System.IDisposable::Dispose() IL_00c8: ldnull IL_00c9: pop IL_00ca: endfinally @@ -7529,21 +7534,21 @@ IL_00c2: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1 class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2::get_Source() IL_00c7: stloc.s V_25 IL_00c9: ldloc.s V_25 - IL_00cb: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_00cb: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1 class [netstandard]System.Collections.Generic.IEnumerable`1::GetEnumerator() IL_00d0: stloc.s V_26 .try { IL_00d2: ldc.i4.0 IL_00d3: stloc.s V_28 IL_00d5: ldloc.s V_26 - IL_00d7: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_00d7: callvirt instance bool [netstandard]System.Collections.IEnumerator::MoveNext() IL_00dc: brfalse.s IL_00f4 .line 22,22 : 9,16 '' IL_00de: ldloc.s V_28 IL_00e0: ldloc.s V_24 IL_00e2: ldloc.s V_26 - IL_00e4: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_00e4: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1::get_Current() IL_00e9: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0) IL_00ee: add.ovf IL_00ef: stloc.s V_28 @@ -7570,7 +7575,7 @@ .line 100001,100001 : 0,0 '' IL_010b: ldloc.s V_29 - IL_010d: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_010d: callvirt instance void [netstandard]System.IDisposable::Dispose() IL_0112: ldnull IL_0113: pop IL_0114: endfinally @@ -7616,21 +7621,21 @@ IL_016f: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1 class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2::get_Source() IL_0174: stloc.s V_34 IL_0176: ldloc.s V_34 - IL_0178: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_0178: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1 class [netstandard]System.Collections.Generic.IEnumerable`1::GetEnumerator() IL_017d: stloc.s V_35 .try { IL_017f: ldc.i4.0 IL_0180: stloc.s V_37 IL_0182: ldloc.s V_35 - IL_0184: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0184: callvirt instance bool [netstandard]System.Collections.IEnumerator::MoveNext() IL_0189: brfalse.s IL_01a1 .line 31,31 : 9,25 '' IL_018b: ldloc.s V_37 IL_018d: ldloc.s V_33 IL_018f: ldloc.s V_35 - IL_0191: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0191: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1::get_Current() IL_0196: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0) IL_019b: add.ovf IL_019c: stloc.s V_37 @@ -7657,7 +7662,7 @@ .line 100001,100001 : 0,0 '' IL_01b8: ldloc.s V_38 - IL_01ba: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_01ba: callvirt instance void [netstandard]System.IDisposable::Dispose() IL_01bf: ldnull IL_01c0: pop IL_01c1: endfinally @@ -7947,13 +7952,13 @@ .line 100001,100001 : 0,0 '' IL_0518: ldstr "source" - IL_051d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_051d: newobj instance void [netstandard]System.ArgumentNullException::.ctor(string) IL_0522: throw .line 100001,100001 : 0,0 '' IL_0523: nop IL_0524: ldloc.s V_48 - IL_0526: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_0526: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1 class [netstandard]System.Collections.Generic.IEnumerable`1::GetEnumerator() IL_052b: stloc.s V_49 .try { @@ -7962,13 +7967,13 @@ IL_0538: ldc.i4.0 IL_0539: stloc.s V_52 IL_053b: ldloc.s V_49 - IL_053d: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_053d: callvirt instance bool [netstandard]System.Collections.IEnumerator::MoveNext() IL_0542: brfalse.s IL_0560 IL_0544: ldloc.s V_51 IL_0546: ldloc.s V_47 IL_0548: ldloc.s V_49 - IL_054a: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_054a: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1::get_Current() IL_054f: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::Invoke(!0) IL_0554: add IL_0555: stloc.s V_51 @@ -7990,7 +7995,7 @@ .line 100001,100001 : 0,0 '' IL_0568: ldstr "source" - IL_056d: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_056d: newobj instance void [netstandard]System.InvalidOperationException::.ctor(string) IL_0572: throw .line 100001,100001 : 0,0 '' @@ -8021,7 +8026,7 @@ .line 100001,100001 : 0,0 '' IL_0597: ldloc.s V_55 - IL_0599: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0599: callvirt instance void [netstandard]System.IDisposable::Dispose() IL_059e: ldnull IL_059f: pop IL_05a0: endfinally @@ -8061,13 +8066,13 @@ .line 100001,100001 : 0,0 '' IL_05f0: ldstr "source" - IL_05f5: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_05f5: newobj instance void [netstandard]System.ArgumentNullException::.ctor(string) IL_05fa: throw .line 100001,100001 : 0,0 '' IL_05fb: nop IL_05fc: ldloc.s V_60 - IL_05fe: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1>::GetEnumerator() + IL_05fe: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1 class [netstandard]System.Collections.Generic.IEnumerable`1>::GetEnumerator() IL_0603: stloc.s V_61 .try { @@ -8076,13 +8081,13 @@ IL_0610: ldc.i4.0 IL_0611: stloc.s V_64 IL_0613: ldloc.s V_61 - IL_0615: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0615: callvirt instance bool [netstandard]System.Collections.IEnumerator::MoveNext() IL_061a: brfalse.s IL_0638 IL_061c: ldloc.s V_63 IL_061e: ldloc.s V_59 IL_0620: ldloc.s V_61 - IL_0622: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1>::get_Current() + IL_0622: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1>::get_Current() IL_0627: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,float64>::Invoke(!0) IL_062c: add IL_062d: stloc.s V_63 @@ -8104,7 +8109,7 @@ .line 100001,100001 : 0,0 '' IL_0640: ldstr "source" - IL_0645: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0645: newobj instance void [netstandard]System.InvalidOperationException::.ctor(string) IL_064a: throw .line 100001,100001 : 0,0 '' @@ -8135,7 +8140,7 @@ .line 100001,100001 : 0,0 '' IL_066f: ldloc.s V_67 - IL_0671: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0671: callvirt instance void [netstandard]System.IDisposable::Dispose() IL_0676: ldnull IL_0677: pop IL_0678: endfinally diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101ElementOperators01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101ElementOperators01.il.bsl index b0aa6e961a6..8a566a74537 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101ElementOperators01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101ElementOperators01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,12 +13,17 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:5:0:0 + .ver 4:8:0:0 } .assembly extern Utils { .ver 0:0:0:0 } +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 +} .assembly Linq101ElementOperators01 { .custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32, @@ -33,20 +38,20 @@ } .mresource public FSharpSignatureData.Linq101ElementOperators01 { - // Offset: 0x00000000 Length: 0x0000038A + // Offset: 0x00000000 Length: 0x0000037C } .mresource public FSharpOptimizationData.Linq101ElementOperators01 { - // Offset: 0x00000390 Length: 0x00000127 + // Offset: 0x00000380 Length: 0x00000127 } .module Linq101ElementOperators01.exe -// MVID: {5B9A632A-19D7-C20D-A745-03832A639A5B} +// MVID: {5D4DD376-19D7-C20D-A745-038376D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x028F0000 +// Image base: 0x069C0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -100,7 +105,7 @@ .locals init ([0] class [Utils]Utils/Product V_0, [1] class [Utils]Utils/Product p) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 100001,100001 : 0,0 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101ElementOperators01.fs' + .line 100001,100001 : 0,0 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101ElementOperators01.fs' IL_0000: ldarg.0 IL_0001: ldfld int32 Linq101ElementOperators01/products12@12::pc IL_0006: ldc.i4.1 @@ -769,7 +774,7 @@ .line 23,23 : 16,27 '' IL_0000: ldarg.1 IL_0001: ldc.i4.0 - IL_0002: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0002: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0007: ldc.i4.s 111 IL_0009: ceq IL_000b: ret @@ -1471,7 +1476,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101ElementOperators01::'products@8-2' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101ElementOperators01::products@8 IL_0005: ret } // end of method Linq101ElementOperators01::get_products @@ -1527,7 +1532,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101ElementOperators01::'numbers2@48-2' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101ElementOperators01::numbers2@48 IL_0005: ret } // end of method Linq101ElementOperators01::get_numbers2 @@ -1588,7 +1593,7 @@ .class private abstract auto ansi sealed ''.$Linq101ElementOperators01 extends [mscorlib]System.Object { - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'products@8-2' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 products@8 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [Utils]Utils/Product products12@10 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -1598,7 +1603,7 @@ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly int32 firstNumOrDefault@29 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'numbers2@48-2' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 numbers2@48 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly int32 fourthLowNum@50 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -1625,7 +1630,7 @@ .line 8,8 : 1,32 '' IL_0000: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getProductList() IL_0005: dup - IL_0006: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101ElementOperators01::'products@8-2' + IL_0006: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101ElementOperators01::products@8 IL_000b: stloc.0 IL_000c: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() IL_0011: stloc.s V_8 @@ -1746,7 +1751,7 @@ IL_013b: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_0140: dup - IL_0141: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101ElementOperators01::'numbers2@48-2' + IL_0141: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101ElementOperators01::numbers2@48 IL_0146: stloc.s numbers2 IL_0148: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() IL_014d: stloc.s V_10 diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Grouping01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Grouping01.il.bsl index 050bdf1cc6d..41bc7a25190 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Grouping01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Grouping01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,7 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:5:0:0 + .ver 4:8:0:0 } .assembly extern System.Core { @@ -24,6 +24,11 @@ { .ver 0:0:0:0 } +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 +} .assembly Linq101Grouping01 { .custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32, @@ -38,20 +43,20 @@ } .mresource public FSharpSignatureData.Linq101Grouping01 { - // Offset: 0x00000000 Length: 0x0000040F + // Offset: 0x00000000 Length: 0x00000401 } .mresource public FSharpOptimizationData.Linq101Grouping01 { - // Offset: 0x00000418 Length: 0x00000129 + // Offset: 0x00000408 Length: 0x00000129 } .module Linq101Grouping01.exe -// MVID: {5B9A68C1-FB79-E5BF-A745-0383C1689A5B} +// MVID: {5D4DD376-FB79-E5BF-A745-038376D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x025F0000 +// Image base: 0x06BA0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -89,7 +94,7 @@ .maxstack 6 .locals init ([0] int32 n) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 14,14 : 9,28 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Grouping01.fs' + .line 14,14 : 9,28 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Grouping01.fs' IL_0000: ldarg.1 IL_0001: stloc.0 .line 15,15 : 9,29 '' @@ -324,7 +329,7 @@ .line 25,25 : 24,25 '' IL_0000: ldarg.1 IL_0001: ldc.i4.0 - IL_0002: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0002: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0007: ret } // end of method 'wordGroups@25-2'::Invoke @@ -1095,7 +1100,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::'numbers@10-3' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::numbers@10 IL_0005: ret } // end of method Linq101Grouping01::get_numbers @@ -1113,7 +1118,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::'words@20-2' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::words@20 IL_0005: ret } // end of method Linq101Grouping01::get_words @@ -1131,7 +1136,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::'products@30-4' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::products@30 IL_0005: ret } // end of method Linq101Grouping01::get_products @@ -1223,15 +1228,15 @@ { .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 digits@7 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'numbers@10-3' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 numbers@10 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Tuple`2[] numberGroups@12 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'words@20-2' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 words@20 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Tuple`2[] wordGroups@22 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'products@30-4' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 products@30 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Tuple`2[] orderGroups@32 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -1329,7 +1334,7 @@ IL_00ad: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_00b2: dup - IL_00b3: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::'numbers@10-3' + IL_00b3: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::numbers@10 IL_00b8: stloc.1 .line 12,17 : 1,21 '' IL_00b9: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -1383,7 +1388,7 @@ IL_0152: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_0157: dup - IL_0158: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::'words@20-2' + IL_0158: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::words@20 IL_015d: stloc.3 .line 22,27 : 1,21 '' IL_015e: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -1419,7 +1424,7 @@ .line 30,30 : 1,32 '' IL_01bc: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getProductList() IL_01c1: dup - IL_01c2: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::'products@30-4' + IL_01c2: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Grouping01::products@30 IL_01c7: stloc.s products .line 32,37 : 1,21 '' IL_01c9: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Partitioning01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Partitioning01.il.bsl index b210d7f3c90..51587ae26ac 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Partitioning01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Partitioning01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,12 +13,17 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:5:0:0 + .ver 4:8:0:0 } .assembly extern Utils { .ver 0:0:0:0 } +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 +} .assembly Linq101Partitioning01 { .custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32, @@ -33,20 +38,20 @@ } .mresource public FSharpSignatureData.Linq101Partitioning01 { - // Offset: 0x00000000 Length: 0x000003DE + // Offset: 0x00000000 Length: 0x000003D0 } .mresource public FSharpOptimizationData.Linq101Partitioning01 { - // Offset: 0x000003E8 Length: 0x00000138 + // Offset: 0x000003D8 Length: 0x00000138 } .module Linq101Partitioning01.exe -// MVID: {5B9A632A-B280-A6A2-A745-03832A639A5B} +// MVID: {5D4DD376-B280-A6A2-A745-038376D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x00AF0000 +// Image base: 0x06520000 // =============== CLASS MEMBERS DECLARATION =================== @@ -100,7 +105,7 @@ .locals init ([0] int32 V_0, [1] int32 n) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 100001,100001 : 0,0 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Partitioning01.fs' + .line 100001,100001 : 0,0 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Partitioning01.fs' IL_0000: ldarg.0 IL_0001: ldfld int32 Linq101Partitioning01/first3Numbers@12::pc IL_0006: ldc.i4.1 @@ -522,8 +527,8 @@ IL_000e: ldloc.0 IL_000f: callvirt instance string [Utils]Utils/Customer::get_Region() IL_0014: ldstr "WA" - IL_0019: call bool [mscorlib]System.String::Equals(string, - string) + IL_0019: call bool [netstandard]System.String::Equals(string, + string) IL_001e: ret } // end of method 'WAOrders@22-2'::Invoke @@ -1039,8 +1044,8 @@ IL_000e: ldloc.0 IL_000f: callvirt instance string [Utils]Utils/Customer::get_Region() IL_0014: ldstr "WA" - IL_0019: call bool [mscorlib]System.String::Equals(string, - string) + IL_0019: call bool [netstandard]System.String::Equals(string, + string) IL_001e: ret } // end of method 'WAOrders2@38-2'::Invoke @@ -1817,7 +1822,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Partitioning01::'numbers@7-5' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Partitioning01::numbers@7 IL_0005: ret } // end of method Linq101Partitioning01::get_numbers @@ -1835,7 +1840,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Partitioning01::'customers@17-2' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Partitioning01::customers@17 IL_0005: ret } // end of method Linq101Partitioning01::get_customers @@ -1937,11 +1942,11 @@ .class private abstract auto ansi sealed ''.$Linq101Partitioning01 extends [mscorlib]System.Object { - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'numbers@7-5' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 numbers@7 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 first3Numbers@10 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'customers@17-2' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 customers@17 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Tuple`3[] WAOrders@18 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -2009,7 +2014,7 @@ IL_003d: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_0042: dup - IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Partitioning01::'numbers@7-5' + IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Partitioning01::numbers@7 IL_0048: stloc.0 .line 10,14 : 1,20 '' IL_0049: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -2033,7 +2038,7 @@ .line 17,17 : 1,34 '' IL_0076: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getCustomerList() IL_007b: dup - IL_007c: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Partitioning01::'customers@17-2' + IL_007c: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Partitioning01::customers@17 IL_0081: stloc.2 .line 18,24 : 1,21 '' IL_0082: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Select01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Select01.il.bsl index 8afae23a726..b03de1f21ff 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Select01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Select01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,12 +13,17 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:5:0:0 + .ver 4:8:0:0 } .assembly extern Utils { .ver 0:0:0:0 } +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 +} .assembly Linq101Select01 { .custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32, @@ -33,20 +38,20 @@ } .mresource public FSharpSignatureData.Linq101Select01 { - // Offset: 0x00000000 Length: 0x00000663 + // Offset: 0x00000000 Length: 0x00000655 } .mresource public FSharpOptimizationData.Linq101Select01 { - // Offset: 0x00000668 Length: 0x00000204 + // Offset: 0x00000660 Length: 0x00000204 } .module Linq101Select01.exe -// MVID: {5B9A632A-6057-8F80-A745-03832A639A5B} +// MVID: {5D4DD376-6057-8F80-A745-038376D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x00FF0000 +// Image base: 0x04C40000 // =============== CLASS MEMBERS DECLARATION =================== @@ -77,7 +82,7 @@ .maxstack 5 .locals init ([0] int32 n) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 12,12 : 9,28 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Select01.fs' + .line 12,12 : 9,28 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Select01.fs' IL_0000: ldarg.1 IL_0001: stloc.0 .line 13,13 : 9,23 '' @@ -2535,7 +2540,7 @@ } // end of class 'pairs@75-3' - .class auto ansi serializable sealed nested assembly beforefieldinit 'orders@83-3' + .class auto ansi serializable sealed nested assembly beforefieldinit 'orders@83-1' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,object>> { .field public class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder builder@ @@ -2555,12 +2560,12 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,object>>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/'orders@83-3'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/'orders@83-1'::builder@ IL_000d: ldarg.0 IL_000e: ldarg.2 - IL_000f: stfld class [Utils]Utils/Customer Linq101Select01/'orders@83-3'::c + IL_000f: stfld class [Utils]Utils/Customer Linq101Select01/'orders@83-1'::c IL_0014: ret - } // end of method 'orders@83-3'::.ctor + } // end of method 'orders@83-1'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2,object> Invoke(class [Utils]Utils/Order _arg2) cil managed @@ -2573,20 +2578,20 @@ IL_0001: stloc.0 .line 84,84 : 9,34 '' IL_0002: ldarg.0 - IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/'orders@83-3'::builder@ + IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/'orders@83-1'::builder@ IL_0008: ldarg.0 - IL_0009: ldfld class [Utils]Utils/Customer Linq101Select01/'orders@83-3'::c + IL_0009: ldfld class [Utils]Utils/Customer Linq101Select01/'orders@83-1'::c IL_000e: ldloc.0 IL_000f: newobj instance void class [mscorlib]System.Tuple`2::.ctor(!0, !1) IL_0014: tail. IL_0016: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Yield,object>(!!0) IL_001b: ret - } // end of method 'orders@83-3'::Invoke + } // end of method 'orders@83-1'::Invoke - } // end of class 'orders@83-3' + } // end of class 'orders@83-1' - .class auto ansi serializable sealed nested assembly beforefieldinit 'orders@82-2' + .class auto ansi serializable sealed nested assembly beforefieldinit orders@82 extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [mscorlib]System.Collections.IEnumerable>> { .field public class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder builder@ @@ -2604,9 +2609,9 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [mscorlib]System.Collections.IEnumerable>>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/'orders@82-2'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/orders@82::builder@ IL_000d: ret - } // end of method 'orders@82-2'::.ctor + } // end of method orders@82::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2,class [mscorlib]System.Collections.IEnumerable> Invoke(class [Utils]Utils/Customer _arg1) cil managed @@ -2619,26 +2624,26 @@ IL_0001: stloc.0 .line 83,83 : 9,29 '' IL_0002: ldarg.0 - IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/'orders@82-2'::builder@ + IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/orders@82::builder@ IL_0008: ldarg.0 - IL_0009: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/'orders@82-2'::builder@ + IL_0009: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/orders@82::builder@ IL_000e: ldloc.0 IL_000f: callvirt instance class [Utils]Utils/Order[] [Utils]Utils/Customer::get_Orders() IL_0014: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Source(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0019: ldarg.0 - IL_001a: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/'orders@82-2'::builder@ + IL_001a: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Select01/orders@82::builder@ IL_001f: ldloc.0 - IL_0020: newobj instance void Linq101Select01/'orders@83-3'::.ctor(class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder, + IL_0020: newobj instance void Linq101Select01/'orders@83-1'::.ctor(class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder, class [Utils]Utils/Customer) IL_0025: tail. IL_0027: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::For,object>(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_002c: ret - } // end of method 'orders@82-2'::Invoke + } // end of method orders@82::Invoke - } // end of class 'orders@82-2' + } // end of class orders@82 - .class auto ansi serializable sealed nested assembly beforefieldinit 'orders@84-4' + .class auto ansi serializable sealed nested assembly beforefieldinit 'orders@84-2' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,bool> { .method assembly specialname rtspecialname @@ -2651,7 +2656,7 @@ IL_0000: ldarg.0 IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,bool>::.ctor() IL_0006: ret - } // end of method 'orders@84-4'::.ctor + } // end of method 'orders@84-2'::.ctor .method public strict virtual instance bool Invoke(class [mscorlib]System.Tuple`2 tupledArg) cil managed @@ -2675,19 +2680,19 @@ IL_001a: ldc.i4.0 IL_001b: ldc.i4.0 IL_001c: ldc.i4.2 - IL_001d: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_0022: call bool [mscorlib]System.Decimal::op_LessThan(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_001d: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_0022: call bool [netstandard]System.Decimal::op_LessThan(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_0027: ret - } // end of method 'orders@84-4'::Invoke + } // end of method 'orders@84-2'::Invoke - } // end of class 'orders@84-4' + } // end of class 'orders@84-2' - .class auto ansi serializable sealed nested assembly beforefieldinit 'orders@85-5' + .class auto ansi serializable sealed nested assembly beforefieldinit 'orders@85-3' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [mscorlib]System.Tuple`3> { .method assembly specialname rtspecialname @@ -2700,7 +2705,7 @@ IL_0000: ldarg.0 IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [mscorlib]System.Tuple`3>::.ctor() IL_0006: ret - } // end of method 'orders@85-5'::.ctor + } // end of method 'orders@85-3'::.ctor .method public strict virtual instance class [mscorlib]System.Tuple`3 Invoke(class [mscorlib]System.Tuple`2 tupledArg) cil managed @@ -2727,9 +2732,9 @@ !1, !2) IL_0025: ret - } // end of method 'orders@85-5'::Invoke + } // end of method 'orders@85-3'::Invoke - } // end of class 'orders@85-5' + } // end of class 'orders@85-3' .class auto ansi serializable sealed nested assembly beforefieldinit 'orders2@92-1' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,object>> @@ -3064,13 +3069,13 @@ IL_001a: ldc.i4.0 IL_001b: ldc.i4.0 IL_001c: ldc.i4.1 - IL_001d: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_0022: call bool [mscorlib]System.Decimal::op_GreaterThanOrEqual(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_001d: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_0022: call bool [netstandard]System.Decimal::op_GreaterThanOrEqual(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_0027: ret } // end of method 'orders3@102-2'::Invoke @@ -3186,8 +3191,8 @@ IL_0000: ldarg.1 IL_0001: callvirt instance string [Utils]Utils/Customer::get_Region() IL_0006: ldstr "WA" - IL_000b: call bool [mscorlib]System.String::Equals(string, - string) + IL_000b: call bool [netstandard]System.String::Equals(string, + string) IL_0010: ret } // end of method 'orders4@112-1'::Invoke @@ -3382,7 +3387,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'numbers@7-9' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::numbers@7 IL_0005: ret } // end of method Linq101Select01::get_numbers @@ -3400,7 +3405,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'products@17-12' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::products@17 IL_0005: ret } // end of method Linq101Select01::get_products @@ -3418,7 +3423,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'strings@26-2' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::strings@26 IL_0005: ret } // end of method Linq101Select01::get_strings @@ -3436,7 +3441,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'words@34-8' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::words@34 IL_0005: ret } // end of method Linq101Select01::get_words @@ -3472,7 +3477,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'digits@57-4' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::digits@57 IL_0005: ret } // end of method Linq101Select01::get_digits @@ -3517,7 +3522,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'customers@79-4' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::customers@79 IL_0005: ret } // end of method Linq101Select01::get_customers @@ -3697,19 +3702,19 @@ .class private abstract auto ansi sealed ''.$Linq101Select01 extends [mscorlib]System.Object { - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'numbers@7-9' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 numbers@7 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 numsPlusOne@10 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'products@17-12' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 products@17 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Collections.Generic.IEnumerable`1 productNames@19 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'strings@26-2' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 strings@26 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 textNums@27 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'words@34-8' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 words@34 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Tuple`2[] upperLowerWords@36 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -3717,7 +3722,7 @@ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Tuple`3[] productInfos@50 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'digits@57-4' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 digits@57 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 lowNums@58 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -3727,7 +3732,7 @@ .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Tuple`2[] pairs@70 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'customers@79-4' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 customers@79 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Tuple`3[] orders@80 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -3816,7 +3821,7 @@ IL_003d: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_0042: dup - IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'numbers@7-9' + IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::numbers@7 IL_0048: stloc.0 .line 10,14 : 1,20 '' IL_0049: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -3834,7 +3839,7 @@ .line 17,17 : 1,32 '' IL_0064: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getProductList() IL_0069: dup - IL_006a: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'products@17-12' + IL_006a: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::products@17 IL_006f: stloc.2 IL_0070: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() IL_0075: stloc.s V_22 @@ -3880,7 +3885,7 @@ IL_00ea: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_00ef: dup - IL_00f0: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'strings@26-2' + IL_00f0: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::strings@26 IL_00f5: stloc.s strings .line 27,31 : 1,20 '' IL_00f7: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -3907,7 +3912,7 @@ IL_0131: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_0136: dup - IL_0137: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'words@34-8' + IL_0137: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::words@34 IL_013c: stloc.s words .line 36,40 : 1,20 '' IL_013e: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -3951,7 +3956,7 @@ .line 57,57 : 1,21 '' IL_0192: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 Linq101Select01::get_strings() IL_0197: dup - IL_0198: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'digits@57-4' + IL_0198: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::digits@57 IL_019d: stloc.s digits .line 58,63 : 1,20 '' IL_019f: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -4098,7 +4103,7 @@ .line 79,79 : 1,34 '' IL_030a: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getCustomerList() IL_030f: dup - IL_0310: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::'customers@79-4' + IL_0310: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Select01::customers@79 IL_0315: stloc.s customers .line 80,86 : 1,21 '' IL_0317: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -4110,13 +4115,13 @@ IL_0326: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 Linq101Select01::get_customers() IL_032b: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Source(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0330: ldloc.s V_31 - IL_0332: newobj instance void Linq101Select01/'orders@82-2'::.ctor(class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder) + IL_0332: newobj instance void Linq101Select01/orders@82::.ctor(class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder) IL_0337: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::For,class [mscorlib]System.Collections.IEnumerable>(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) - IL_033c: newobj instance void Linq101Select01/'orders@84-4'::.ctor() + IL_033c: newobj instance void Linq101Select01/'orders@84-2'::.ctor() IL_0341: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Where,class [mscorlib]System.Collections.IEnumerable>(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2) - IL_0346: newobj instance void Linq101Select01/'orders@85-5'::.ctor() + IL_0346: newobj instance void Linq101Select01/'orders@85-3'::.ctor() IL_034b: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Select,class [mscorlib]System.Collections.IEnumerable,class [mscorlib]System.Tuple`3>(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2) IL_0350: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1 class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2,class [mscorlib]System.Collections.IEnumerable>::get_Source() diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101SetOperators01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101SetOperators01.il.bsl index 7b308ef661d..df976c5e84a 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101SetOperators01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101SetOperators01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,12 +13,17 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:5:0:0 + .ver 4:8:0:0 } .assembly extern Utils { .ver 0:0:0:0 } +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 +} .assembly Linq101SetOperators01 { .custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32, @@ -33,20 +38,20 @@ } .mresource public FSharpSignatureData.Linq101SetOperators01 { - // Offset: 0x00000000 Length: 0x00000398 + // Offset: 0x00000000 Length: 0x0000038A } .mresource public FSharpOptimizationData.Linq101SetOperators01 { - // Offset: 0x000003A0 Length: 0x0000011E + // Offset: 0x00000390 Length: 0x0000011E } .module Linq101SetOperators01.exe -// MVID: {5B9A632A-4EE5-349F-A745-03832A639A5B} +// MVID: {5D4DD376-4EE5-349F-A745-038376D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x026A0000 +// Image base: 0x06ED0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -55,7 +60,7 @@ 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 assembly beforefieldinit specialname 'uniqueFactors@13-1' + .class auto autochar serializable sealed nested assembly beforefieldinit specialname uniqueFactors@13 extends class [FSharp.Core]Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1 { .custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 06 00 00 00 00 00 ) @@ -80,17 +85,17 @@ .maxstack 8 IL_0000: ldarg.0 IL_0001: ldarg.1 - IL_0002: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/'uniqueFactors@13-1'::'enum' + IL_0002: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/uniqueFactors@13::'enum' IL_0007: ldarg.0 IL_0008: ldarg.2 - IL_0009: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_0009: stfld int32 Linq101SetOperators01/uniqueFactors@13::pc IL_000e: ldarg.0 IL_000f: ldarg.3 - IL_0010: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::current + IL_0010: stfld int32 Linq101SetOperators01/uniqueFactors@13::current IL_0015: ldarg.0 IL_0016: call instance void class [FSharp.Core]Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1::.ctor() IL_001b: ret - } // end of method 'uniqueFactors@13-1'::.ctor + } // end of method uniqueFactors@13::.ctor .method public strict virtual instance int32 GenerateNext(class [mscorlib]System.Collections.Generic.IEnumerable`1& next) cil managed @@ -100,9 +105,9 @@ .locals init ([0] int32 V_0, [1] int32 n) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 100001,100001 : 0,0 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101SetOperators01.fs' + .line 100001,100001 : 0,0 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101SetOperators01.fs' IL_0000: ldarg.0 - IL_0001: ldfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_0001: ldfld int32 Linq101SetOperators01/uniqueFactors@13::pc IL_0006: ldc.i4.1 IL_0007: sub IL_0008: switch ( @@ -135,18 +140,18 @@ IL_002b: ldarg.0 IL_002c: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 Linq101SetOperators01::get_factorsOf300() IL_0031: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() - IL_0036: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/'uniqueFactors@13-1'::'enum' + IL_0036: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/uniqueFactors@13::'enum' IL_003b: ldarg.0 IL_003c: ldc.i4.1 - IL_003d: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_003d: stfld int32 Linq101SetOperators01/uniqueFactors@13::pc .line 13,13 : 9,33 '' IL_0042: ldarg.0 - IL_0043: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/'uniqueFactors@13-1'::'enum' + IL_0043: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/uniqueFactors@13::'enum' IL_0048: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() IL_004d: brfalse.s IL_0070 IL_004f: ldarg.0 - IL_0050: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/'uniqueFactors@13-1'::'enum' + IL_0050: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/uniqueFactors@13::'enum' IL_0055: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() IL_005a: stloc.0 .line 13,13 : 9,33 '' @@ -154,11 +159,11 @@ IL_005c: stloc.1 IL_005d: ldarg.0 IL_005e: ldc.i4.2 - IL_005f: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_005f: stfld int32 Linq101SetOperators01/uniqueFactors@13::pc .line 14,14 : 9,17 '' IL_0064: ldarg.0 IL_0065: ldloc.1 - IL_0066: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::current + IL_0066: stfld int32 Linq101SetOperators01/uniqueFactors@13::current IL_006b: ldc.i4.1 IL_006c: ret @@ -168,24 +173,24 @@ IL_0070: ldarg.0 IL_0071: ldc.i4.3 - IL_0072: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_0072: stfld int32 Linq101SetOperators01/uniqueFactors@13::pc .line 13,13 : 9,33 '' IL_0077: ldarg.0 - IL_0078: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/'uniqueFactors@13-1'::'enum' + IL_0078: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/uniqueFactors@13::'enum' IL_007d: call void [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives/IntrinsicFunctions::Dispose>(!!0) IL_0082: nop IL_0083: ldarg.0 IL_0084: ldnull - IL_0085: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/'uniqueFactors@13-1'::'enum' + IL_0085: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/uniqueFactors@13::'enum' IL_008a: ldarg.0 IL_008b: ldc.i4.3 - IL_008c: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_008c: stfld int32 Linq101SetOperators01/uniqueFactors@13::pc IL_0091: ldarg.0 IL_0092: ldc.i4.0 - IL_0093: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::current + IL_0093: stfld int32 Linq101SetOperators01/uniqueFactors@13::current IL_0098: ldc.i4.0 IL_0099: ret - } // end of method 'uniqueFactors@13-1'::GenerateNext + } // end of method uniqueFactors@13::GenerateNext .method public strict virtual instance void Close() cil managed @@ -197,7 +202,7 @@ [2] class [mscorlib]System.Exception e) .line 100001,100001 : 0,0 '' IL_0000: ldarg.0 - IL_0001: ldfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_0001: ldfld int32 Linq101SetOperators01/uniqueFactors@13::pc IL_0006: ldc.i4.3 IL_0007: sub IL_0008: switch ( @@ -213,7 +218,7 @@ .try { IL_001a: ldarg.0 - IL_001b: ldfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_001b: ldfld int32 Linq101SetOperators01/uniqueFactors@13::pc IL_0020: switch ( IL_0037, IL_0039, @@ -251,19 +256,19 @@ IL_004c: nop IL_004d: ldarg.0 IL_004e: ldc.i4.3 - IL_004f: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_004f: stfld int32 Linq101SetOperators01/uniqueFactors@13::pc IL_0054: ldarg.0 - IL_0055: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/'uniqueFactors@13-1'::'enum' + IL_0055: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1 Linq101SetOperators01/uniqueFactors@13::'enum' IL_005a: call void [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives/IntrinsicFunctions::Dispose>(!!0) IL_005f: nop .line 100001,100001 : 0,0 '' IL_0060: nop IL_0061: ldarg.0 IL_0062: ldc.i4.3 - IL_0063: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_0063: stfld int32 Linq101SetOperators01/uniqueFactors@13::pc IL_0068: ldarg.0 IL_0069: ldc.i4.0 - IL_006a: stfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::current + IL_006a: stfld int32 Linq101SetOperators01/uniqueFactors@13::current IL_006f: ldnull IL_0070: stloc.1 IL_0071: leave.s IL_007f @@ -303,7 +308,7 @@ .line 100001,100001 : 0,0 '' IL_0093: ret - } // end of method 'uniqueFactors@13-1'::Close + } // end of method uniqueFactors@13::Close .method public strict virtual instance bool get_CheckClose() cil managed @@ -312,7 +317,7 @@ .maxstack 8 .line 100001,100001 : 0,0 '' IL_0000: ldarg.0 - IL_0001: ldfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::pc + IL_0001: ldfld int32 Linq101SetOperators01/uniqueFactors@13::pc IL_0006: switch ( IL_001d, IL_001f, @@ -354,7 +359,7 @@ IL_0036: ldc.i4.0 IL_0037: ret - } // end of method 'uniqueFactors@13-1'::get_CheckClose + } // end of method uniqueFactors@13::get_CheckClose .method public strict virtual instance int32 get_LastGenerated() cil managed @@ -364,9 +369,9 @@ // Code size 7 (0x7) .maxstack 8 IL_0000: ldarg.0 - IL_0001: ldfld int32 Linq101SetOperators01/'uniqueFactors@13-1'::current + IL_0001: ldfld int32 Linq101SetOperators01/uniqueFactors@13::current IL_0006: ret - } // end of method 'uniqueFactors@13-1'::get_LastGenerated + } // end of method uniqueFactors@13::get_LastGenerated .method public strict virtual instance class [mscorlib]System.Collections.Generic.IEnumerator`1 GetFreshEnumerator() cil managed @@ -378,13 +383,13 @@ IL_0000: ldnull IL_0001: ldc.i4.0 IL_0002: ldc.i4.0 - IL_0003: newobj instance void Linq101SetOperators01/'uniqueFactors@13-1'::.ctor(class [mscorlib]System.Collections.Generic.IEnumerator`1, - int32, - int32) + IL_0003: newobj instance void Linq101SetOperators01/uniqueFactors@13::.ctor(class [mscorlib]System.Collections.Generic.IEnumerator`1, + int32, + int32) IL_0008: ret - } // end of method 'uniqueFactors@13-1'::GetFreshEnumerator + } // end of method uniqueFactors@13::GetFreshEnumerator - } // end of class 'uniqueFactors@13-1' + } // end of class uniqueFactors@13 .class auto ansi serializable sealed nested assembly beforefieldinit 'categoryNames@22-1' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> @@ -885,7 +890,7 @@ IL_0070: ldloc.0 IL_0071: callvirt instance string [Utils]Utils/Product::get_ProductName() IL_0076: ldc.i4.0 - IL_0077: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0077: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_007c: stfld char Linq101SetOperators01/productFirstChars@33::current IL_0081: ldc.i4.1 IL_0082: ret @@ -1250,7 +1255,7 @@ IL_0070: ldloc.0 IL_0071: callvirt instance string [Utils]Utils/Customer::get_CompanyName() IL_0076: ldc.i4.0 - IL_0077: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0077: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_007c: stfld char Linq101SetOperators01/customerFirstChars@39::current IL_0081: ldc.i4.1 IL_0082: ret @@ -1484,7 +1489,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::'factorsOf300@9-2' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::factorsOf300@9 IL_0005: ret } // end of method Linq101SetOperators01::get_factorsOf300 @@ -1493,7 +1498,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::'uniqueFactors@11-2' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::uniqueFactors@11 IL_0005: ret } // end of method Linq101SetOperators01::get_uniqueFactors @@ -1502,7 +1507,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::'products@18-14' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::products@18 IL_0005: ret } // end of method Linq101SetOperators01::get_products @@ -1520,7 +1525,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::'customers@28-6' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::customers@28 IL_0005: ret } // end of method Linq101SetOperators01::get_customers @@ -1589,15 +1594,15 @@ .class private abstract auto ansi sealed ''.$Linq101SetOperators01 extends [mscorlib]System.Object { - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'factorsOf300@9-2' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 factorsOf300@9 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'uniqueFactors@11-2' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 uniqueFactors@11 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'products@18-14' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 products@18 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 categoryNames@20 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'customers@28-6' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 customers@28 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Collections.Generic.IEnumerable`1 productFirstChars@30 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -1641,7 +1646,7 @@ IL_001e: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_0023: dup - IL_0024: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::'factorsOf300@9-2' + IL_0024: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::factorsOf300@9 IL_0029: stloc.0 .line 11,15 : 1,20 '' IL_002a: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -1650,20 +1655,20 @@ IL_0033: ldnull IL_0034: ldc.i4.0 IL_0035: ldc.i4.0 - IL_0036: newobj instance void Linq101SetOperators01/'uniqueFactors@13-1'::.ctor(class [mscorlib]System.Collections.Generic.IEnumerator`1, - int32, - int32) + IL_0036: newobj instance void Linq101SetOperators01/uniqueFactors@13::.ctor(class [mscorlib]System.Collections.Generic.IEnumerator`1, + int32, + int32) IL_003b: newobj instance void class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2::.ctor(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0040: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Distinct(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2) IL_0045: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1 class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2::get_Source() IL_004a: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [FSharp.Core]Microsoft.FSharp.Collections.SeqModule::ToList(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_004f: dup - IL_0050: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::'uniqueFactors@11-2' + IL_0050: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::uniqueFactors@11 IL_0055: stloc.1 .line 18,18 : 1,32 '' IL_0056: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getProductList() IL_005b: dup - IL_005c: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::'products@18-14' + IL_005c: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::products@18 IL_0061: stloc.2 .line 20,25 : 1,20 '' IL_0062: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -1685,7 +1690,7 @@ .line 28,28 : 1,34 '' IL_008e: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getCustomerList() IL_0093: dup - IL_0094: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::'customers@28-6' + IL_0094: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101SetOperators01::customers@28 IL_0099: stloc.s customers IL_009b: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() IL_00a0: stloc.s V_9 diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Where01.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Where01.il.bsl index b673d1193cc..8a1f7e2dd5b 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Where01.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/QueryExpressionStepping/Linq101Where01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,12 +13,17 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:5:0:0 + .ver 4:8:0:0 } .assembly extern Utils { .ver 0:0:0:0 } +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 +} .assembly Linq101Where01 { .custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32, @@ -33,20 +38,20 @@ } .mresource public FSharpSignatureData.Linq101Where01 { - // Offset: 0x00000000 Length: 0x000003D6 + // Offset: 0x00000000 Length: 0x000003C8 } .mresource public FSharpOptimizationData.Linq101Where01 { - // Offset: 0x000003E0 Length: 0x0000012E + // Offset: 0x000003D0 Length: 0x0000012E } .module Linq101Where01.exe -// MVID: {5B9A632A-FF23-CD21-A745-03832A639A5B} +// MVID: {5D4DD376-FF23-CD21-A745-038376D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x009E0000 +// Image base: 0x06BD0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -55,7 +60,7 @@ 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 ansi serializable sealed nested assembly beforefieldinit 'lowNums@14-3' + .class auto ansi serializable sealed nested assembly beforefieldinit lowNums@14 extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> { .field public class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder builder@ @@ -73,9 +78,9 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Where01/'lowNums@14-3'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Where01/lowNums@14::builder@ IL_000d: ret - } // end of method 'lowNums@14-3'::.ctor + } // end of method lowNums@14::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 Invoke(int32 _arg1) cil managed @@ -84,21 +89,21 @@ .maxstack 6 .locals init ([0] int32 n) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 14,14 : 9,28 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Where01.fs' + .line 14,14 : 9,28 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\QueryExpressionStepping\\Linq101Where01.fs' IL_0000: ldarg.1 IL_0001: stloc.0 .line 15,15 : 9,22 '' IL_0002: ldarg.0 - IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Where01/'lowNums@14-3'::builder@ + IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder Linq101Where01/lowNums@14::builder@ IL_0008: ldloc.0 IL_0009: tail. IL_000b: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Yield(!!0) IL_0010: ret - } // end of method 'lowNums@14-3'::Invoke + } // end of method lowNums@14::Invoke - } // end of class 'lowNums@14-3' + } // end of class lowNums@14 - .class auto ansi serializable sealed nested assembly beforefieldinit 'lowNums@15-4' + .class auto ansi serializable sealed nested assembly beforefieldinit 'lowNums@15-1' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2 { .method assembly specialname rtspecialname @@ -111,7 +116,7 @@ IL_0000: ldarg.0 IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::.ctor() IL_0006: ret - } // end of method 'lowNums@15-4'::.ctor + } // end of method 'lowNums@15-1'::.ctor .method public strict virtual instance bool Invoke(int32 n) cil managed @@ -123,11 +128,11 @@ IL_0001: ldc.i4.5 IL_0002: clt IL_0004: ret - } // end of method 'lowNums@15-4'::Invoke + } // end of method 'lowNums@15-1'::Invoke - } // end of class 'lowNums@15-4' + } // end of class 'lowNums@15-1' - .class auto ansi serializable sealed nested assembly beforefieldinit 'lowNums@16-5' + .class auto ansi serializable sealed nested assembly beforefieldinit 'lowNums@16-2' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2 { .method assembly specialname rtspecialname @@ -140,7 +145,7 @@ IL_0000: ldarg.0 IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2::.ctor() IL_0006: ret - } // end of method 'lowNums@16-5'::.ctor + } // end of method 'lowNums@16-2'::.ctor .method public strict virtual instance int32 Invoke(int32 n) cil managed @@ -150,9 +155,9 @@ .line 16,16 : 16,17 '' IL_0000: ldarg.1 IL_0001: ret - } // end of method 'lowNums@16-5'::Invoke + } // end of method 'lowNums@16-2'::Invoke - } // end of class 'lowNums@16-5' + } // end of class 'lowNums@16-2' .class auto ansi serializable sealed nested assembly beforefieldinit soldOutProducts@24 extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> @@ -333,13 +338,13 @@ IL_0019: ldc.i4.0 IL_001a: ldc.i4.0 IL_001b: ldc.i4.2 - IL_001c: newobj instance void [mscorlib]System.Decimal::.ctor(int32, - int32, - int32, - bool, - uint8) - IL_0021: call bool [mscorlib]System.Decimal::op_GreaterThan(valuetype [mscorlib]System.Decimal, - valuetype [mscorlib]System.Decimal) + IL_001c: newobj instance void [netstandard]System.Decimal::.ctor(int32, + int32, + int32, + bool, + uint8) + IL_0021: call bool [netstandard]System.Decimal::op_GreaterThan(valuetype [netstandard]System.Decimal, + valuetype [netstandard]System.Decimal) IL_0026: ret .line 100001,100001 : 0,0 '' @@ -442,8 +447,8 @@ IL_0000: ldarg.1 IL_0001: callvirt instance string [Utils]Utils/Customer::get_Region() IL_0006: ldstr "WA" - IL_000b: call bool [mscorlib]System.String::Equals(string, - string) + IL_000b: call bool [netstandard]System.String::Equals(string, + string) IL_0010: ret } // end of method 'waCustomers@43-1'::Invoke @@ -915,7 +920,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'numbers@9-11' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::numbers@9 IL_0005: ret } // end of method Linq101Where01::get_numbers @@ -924,7 +929,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'lowNums@12-2' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::lowNums@12 IL_0005: ret } // end of method Linq101Where01::get_lowNums @@ -933,7 +938,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'products@20-16' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::products@20 IL_0005: ret } // end of method Linq101Where01::get_products @@ -960,7 +965,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'customers@38-8' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::customers@38 IL_0005: ret } // end of method Linq101Where01::get_customers @@ -978,7 +983,7 @@ { // Code size 6 (0x6) .maxstack 8 - IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'digits@48-6' + IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::digits@48 IL_0005: ret } // end of method Linq101Where01::get_digits @@ -1050,21 +1055,21 @@ .class private abstract auto ansi sealed ''.$Linq101Where01 extends [mscorlib]System.Object { - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'numbers@9-11' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 numbers@9 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'lowNums@12-2' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 lowNums@12 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'products@20-16' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 products@20 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Collections.Generic.IEnumerable`1 soldOutProducts@22 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Collections.Generic.IEnumerable`1 expensiveInStockProducts@30 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'customers@38-8' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 customers@38 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [Utils]Utils/Customer[] waCustomers@40 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) - .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 'digits@48-6' + .field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 digits@48 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) .field static assembly class [mscorlib]System.Collections.Generic.IEnumerable`1 shortDigits@49 .custom instance void [mscorlib]System.Diagnostics.DebuggerBrowsableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggerBrowsableState) = ( 01 00 00 00 00 00 00 00 ) @@ -1124,7 +1129,7 @@ IL_003d: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_0042: dup - IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'numbers@9-11' + IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::numbers@9 IL_0048: stloc.0 .line 12,17 : 1,20 '' IL_0049: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -1136,24 +1141,24 @@ IL_0058: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 Linq101Where01::get_numbers() IL_005d: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Source(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_0062: ldloc.s V_9 - IL_0064: newobj instance void Linq101Where01/'lowNums@14-3'::.ctor(class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder) + IL_0064: newobj instance void Linq101Where01/lowNums@14::.ctor(class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder) IL_0069: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::For(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) - IL_006e: newobj instance void Linq101Where01/'lowNums@15-4'::.ctor() + IL_006e: newobj instance void Linq101Where01/'lowNums@15-1'::.ctor() IL_0073: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Where(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2) - IL_0078: newobj instance void Linq101Where01/'lowNums@16-5'::.ctor() + IL_0078: newobj instance void Linq101Where01/'lowNums@16-2'::.ctor() IL_007d: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2 [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Select(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2) IL_0082: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1 class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2::get_Source() IL_0087: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [FSharp.Core]Microsoft.FSharp.Collections.ListModule::OfSeq(class [mscorlib]System.Collections.Generic.IEnumerable`1) IL_008c: dup - IL_008d: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'lowNums@12-2' + IL_008d: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::lowNums@12 IL_0092: stloc.1 .line 20,20 : 1,32 '' IL_0093: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getProductList() IL_0098: dup - IL_0099: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'products@20-16' + IL_0099: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::products@20 IL_009e: stloc.2 IL_009f: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() IL_00a4: stloc.s V_10 @@ -1202,7 +1207,7 @@ .line 38,38 : 1,34 '' IL_012a: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 [Utils]Utils::getCustomerList() IL_012f: dup - IL_0130: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'customers@38-8' + IL_0130: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::customers@38 IL_0135: stloc.s customers .line 40,45 : 1,21 '' IL_0137: call class [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::get_query() @@ -1261,7 +1266,7 @@ IL_01e6: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1::Cons(!0, class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1) IL_01eb: dup - IL_01ec: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::'digits@48-6' + IL_01ec: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1 ''.$Linq101Where01::digits@48 IL_01f1: stloc.s digits .line 49,55 : 1,21 '' IL_01f3: newobj instance void Linq101Where01/shortDigits@55::.ctor() diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/TestFunction23.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/TestFunction23.il.bsl index fffbcac4e2f..71a624736be 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/TestFunction23.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/TestFunction23.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,7 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 } .assembly TestFunction23 { @@ -29,20 +29,20 @@ } .mresource public FSharpSignatureData.TestFunction23 { - // Offset: 0x00000000 Length: 0x00000346 + // Offset: 0x00000000 Length: 0x00000338 } .mresource public FSharpOptimizationData.TestFunction23 { - // Offset: 0x00000350 Length: 0x000000E3 + // Offset: 0x00000340 Length: 0x000000E3 } .module TestFunction23.exe -// MVID: {59B19208-A643-451C-A745-03830892B159} +// MVID: {5D79F0D6-A643-451C-A745-0383D6F0795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x02D60000 +// Image base: 0x052D0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -63,7 +63,7 @@ // Code size 31 (0x1f) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 100001,100001 : 0,0 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\TestFunctions\\TestFunction23.fs' + .line 100001,100001 : 0,0 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\TestFunctions\\TestFunction23.fs' IL_0000: ldarg.0 IL_0001: callvirt instance void [mscorlib]System.Object::.ctor() IL_0006: ldarg.0 diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/TestFunction3c.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/TestFunction3c.il.bsl index dc790e1200b..8df7339f4ac 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/TestFunction3c.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/TestFunction3c.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 4:8:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly TestFunction3c { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.TestFunction3c { - // Offset: 0x00000000 Length: 0x00000200 + // Offset: 0x00000000 Length: 0x000001FA } .mresource public FSharpOptimizationData.TestFunction3c { - // Offset: 0x00000208 Length: 0x0000008A + // Offset: 0x00000200 Length: 0x0000008A } .module TestFunction3c.exe -// MVID: {59B19208-A662-4FAC-A745-03830892B159} +// MVID: {5D4DD397-A662-4FAC-A745-038397D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x02B20000 +// Image base: 0x06E30000 // =============== CLASS MEMBERS DECLARATION =================== @@ -56,7 +61,7 @@ // Code size 36 (0x24) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 5,5 : 5,20 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\TestFunctions\\TestFunction3c.fs' + .line 5,5 : 5,20 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\TestFunctions\\TestFunction3c.fs' IL_0000: ldstr "Hello" IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5::.ctor(string) IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatLine(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) @@ -113,8 +118,8 @@ IL_002c: stloc.s msg IL_002e: ldloc.s msg IL_0030: ldstr "hello" - IL_0035: call bool [mscorlib]System.String::Equals(string, - string) + IL_0035: call bool [netstandard]System.String::Equals(string, + string) IL_003a: brfalse.s IL_003e IL_003c: br.s IL_0040 diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/Testfunction22f.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/Testfunction22f.il.bsl index 2dd07a07bb2..6c62a9f05ed 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/Testfunction22f.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/TestFunctions/Testfunction22f.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 4:8:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Testfunction22f { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Testfunction22f { - // Offset: 0x00000000 Length: 0x0000015D + // Offset: 0x00000000 Length: 0x00000157 } .mresource public FSharpOptimizationData.Testfunction22f { - // Offset: 0x00000168 Length: 0x00000056 + // Offset: 0x00000160 Length: 0x00000056 } .module Testfunction22f.exe -// MVID: {59B19208-C040-2523-A745-03830892B159} +// MVID: {5D4DD397-C040-2523-A745-038397D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x012C0000 +// Image base: 0x05810000 // =============== CLASS MEMBERS DECLARATION =================== @@ -67,13 +72,13 @@ .maxstack 4 .locals init ([0] string V_0) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 3,3 : 1,15 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\TestFunctions\\Testfunction22f.fs' + .line 3,3 : 1,15 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\TestFunctions\\Testfunction22f.fs' IL_0000: ldstr "A" IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldstr "A" - IL_000c: call bool [mscorlib]System.String::Equals(string, - string) + IL_000c: call bool [netstandard]System.String::Equals(string, + string) IL_0011: brfalse.s IL_0015 IL_0013: br.s IL_0017 diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/Tuples/TupleElimination.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/Tuples/TupleElimination.il.bsl index 8feaefd480e..798c5cbbe78 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/Tuples/TupleElimination.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/Tuples/TupleElimination.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:3:0 + .ver 4:8:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly TupleElimination { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.TupleElimination { - // Offset: 0x00000000 Length: 0x00000236 + // Offset: 0x00000000 Length: 0x00000228 } .mresource public FSharpOptimizationData.TupleElimination { - // Offset: 0x00000240 Length: 0x0000007B + // Offset: 0x00000230 Length: 0x0000007B } .module TupleElimination.exe -// MVID: {5B17FC67-DFDD-92DF-A745-038367FC175B} +// MVID: {5D4DD398-DFDD-92DF-A745-038398D34D5D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x02760000 +// Image base: 0x05480000 // =============== CLASS MEMBERS DECLARATION =================== @@ -57,11 +62,11 @@ .maxstack 4 .locals init ([0] class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit> V_0) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 5,5 : 15,27 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\Tuples\\TupleElimination.fs' + .line 5,5 : 15,27 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\Tuples\\TupleElimination.fs' IL_0000: ldstr "%A" IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,!!a>::.ctor(string) IL_000a: stloc.0 - IL_000b: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_000b: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_0010: ldloc.0 IL_0011: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter>(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) diff --git a/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/E_noframework02.fs b/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/E_noframework02.fs deleted file mode 100644 index 975f99b4c54..00000000000 --- a/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/E_noframework02.fs +++ /dev/null @@ -1,14 +0,0 @@ -// #Regression #NoMT #CompilerOptions -// Regression test for FSHARP1.0:5976 -// On .NET 2.0 System.Core is not in the default reference set -//The type 'Func' is not defined -//Lookup on object of indeterminate type based on information prior to this program point\. A type annotation may be needed prior to this program point to constrain the type of the object\. This may allow the lookup to be resolved\. -//The type 'Func' is not defined - -// System.Func<...> is in System.Core.dll (NetFx3.5) - -let f ( d : System.Func ) = d.Invoke() + 1;; - -if f ( new System.Func<_>(fun _ -> 10) ) <> 11 then exit 1 - -exit 0 diff --git a/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/E_noframework02.fsx b/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/E_noframework02.fsx deleted file mode 100644 index bb0dc408b55..00000000000 --- a/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/E_noframework02.fsx +++ /dev/null @@ -1,16 +0,0 @@ -// #Regression #NoMT #CompilerOptions -// Regression test for FSHARP1.0:5976 -// On .NET 2.0 System.Core is not in the default reference set -//The type 'Func' is not defined - -// System.Func<...> is in System.Core.dll (NetFx3.5) - -let f ( d : System.Func ) = d.Invoke() + 1;; - -if f ( new System.Func<_>(fun _ -> 10) ) <> 11 then exit 1 - -exit 0;; - -#q;; - - diff --git a/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/env.lst b/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/env.lst index 10a5d4db368..5fe275e2201 100644 --- a/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/env.lst +++ b/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/env.lst @@ -2,6 +2,6 @@ SOURCE=noframework01.fs # noframework01.fs SOURCE=noframework01.fsx COMPILE_ONLY=1 FSIMODE=PIPE # noframework01.fsx - SOURCE=noframework02.fs COMPILE_ONLY=1 SCFLAGS="--noframework" # noframework02.fs + SOURCE=noframework02.fsx COMPILE_ONLY=1 SCFLAGS="--noframework" # noframework02.fsx SOURCE=noframework02.fsx COMPILE_ONLY=1 SCFLAGS="--noframework" FSIMODE=FEED # noframework02.fsx diff --git a/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/noframework02.fs b/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/noframework02.fs deleted file mode 100644 index dc79de01586..00000000000 --- a/tests/fsharpqa/Source/CompilerOptions/fsc/noframework/noframework02.fs +++ /dev/null @@ -1,12 +0,0 @@ -// #Regression #NoMT #CompilerOptions -// Regression test for FSHARP1.0:5976 -// See FSHARP1.0:6181 - it is no longer an error to specify --noframework and not specify -r to mscorlib/fscore -// - -// System.Func<...> is in System.Core.dll (NetFx3.5) - -let f ( d : System.Func ) = d.Invoke() + 1;; - -if f ( new System.Func<_>(fun _ -> 10) ) <> 11 then exit 1 - -exit 0 diff --git a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/basic/env.lst b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/basic/env.lst index 6f56022cdb7..7e19e19c3ab 100644 --- a/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/basic/env.lst +++ b/tests/fsharpqa/Source/Conformance/ObjectOrientedTypeDefinitions/TypeExtensions/basic/env.lst @@ -30,4 +30,4 @@ NOMONO SOURCE=E_ProtectedMemberInExtentionMember01.fs SCFLAGS="--test:ErrorRange # These tests have a dependency on NetFx3.5 (i.e. CSC_PIPE must be 3.5 or better) # For this reason, we exclude it from MT NoMT SOURCE=FSUsingExtendedTypes.fs SCFLAGS="--test:ErrorRanges -r:fslib.dll -r:CSLibExtendingFS.dll" PRECMD="\$CSC_PIPE /t:library /r:fslib.dll CSLibExtendingFS.cs" # FSUsingExtendedTypes.fs -NoMT SOURCE="GenericExtensions.fs" SCFLAGS="--reference:GenericExtensionsCSLib.dll" PRECMD="\$CSC_PIPE /r:\"%FSCOREDLLPATH%\" /t:library /reference:System.Core.dll GenericExtensionsCSLib.cs" # GenericExtensions.fs \ No newline at end of file +NoMT SOURCE="GenericExtensions.fs" SCFLAGS="--reference:GenericExtensionsCSLib.dll" PRECMD="\$CSC_PIPE /r:\"%FSCOREDLLPATH%\" /t:library" GenericExtensionsCSLib.cs" # GenericExtensions.fs diff --git a/tests/fsharpqa/Source/InteractiveSession/Misc/env.lst b/tests/fsharpqa/Source/InteractiveSession/Misc/env.lst index f18e59e67d6..95a2e509ea6 100644 --- a/tests/fsharpqa/Source/InteractiveSession/Misc/env.lst +++ b/tests/fsharpqa/Source/InteractiveSession/Misc/env.lst @@ -153,18 +153,18 @@ NOMONO SOURCE=Regressions01.fs COMPILE_ONLY=1 FSIMODE=PIPE SCFLAGS="--nologo" SOURCE=..\\Misc\\aaa\\bbb\\RelativeHashRResolution05_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo" # RelativeHashRResolution05_fscrelative # via FSC, invoking like `fsc.exe --simpleresolution path\script.fsx` - SOURCE=ccc\\RelativeHashRResolution01_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution01_fscsimple - SOURCE=ccc\\RelativeHashRResolution02_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution02_fscsimple - SOURCE=ccc\\RelativeHashRResolution03_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution03_fscsimple - SOURCE=aaa\\bbb\\RelativeHashRResolution04_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution04_fscsimple - SOURCE=aaa\\bbb\\RelativeHashRResolution05_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution05_fscsimple + SOURCE=ccc\\RelativeHashRResolution01_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution01_fscsimple + SOURCE=ccc\\RelativeHashRResolution02_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution02_fscsimple + SOURCE=ccc\\RelativeHashRResolution03_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution03_fscsimple + SOURCE=aaa\\bbb\\RelativeHashRResolution04_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution04_fscsimple + SOURCE=aaa\\bbb\\RelativeHashRResolution05_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution05_fscsimple # via FSC, invoking like `fsc.exe ..\path\path\script.fsx` - SOURCE=..\\Misc\\ccc\\RelativeHashRResolution01_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution01_fscrelativesimple - SOURCE=..\\Misc\\ccc\\RelativeHashRResolution02_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution02_fscrelativesimple - SOURCE=..\\Misc\\ccc\\RelativeHashRResolution03_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution03_fscrelativesimple - SOURCE=..\\Misc\\aaa\\bbb\\RelativeHashRResolution04_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution04_fscrelativesimple - SOURCE=..\\Misc\\aaa\\bbb\\RelativeHashRResolution05_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\"" # RelativeHashRResolution05_fscrelativesimple + SOURCE=..\\Misc\\ccc\\RelativeHashRResolution01_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution01_fscrelativesimple + SOURCE=..\\Misc\\ccc\\RelativeHashRResolution02_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution02_fscrelativesimple + SOURCE=..\\Misc\\ccc\\RelativeHashRResolution03_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution03_fscrelativesimple + SOURCE=..\\Misc\\aaa\\bbb\\RelativeHashRResolution04_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution04_fscrelativesimple + SOURCE=..\\Misc\\aaa\\bbb\\RelativeHashRResolution05_1.fsx COMPILE_ONLY=1 SCFLAGS="--nologo --simpleresolution --noframework -r:\"%FSCOREDLLPATH%\" " # RelativeHashRResolution05_fscrelativesimple # dependency managers SOURCE="UnknownDependencyManager\\script1.fsx" COMPILE_ONLY=1 FSIMODE=FEED SCFLAGS="--nologo" # with unknown manager \ No newline at end of file diff --git a/tests/fsharpqa/Source/MultiTargeting/E_MissingReferenceToFSharpCore20.fs b/tests/fsharpqa/Source/MultiTargeting/E_MissingReferenceToFSharpCore20.fs deleted file mode 100644 index 60a3f61a3f0..00000000000 --- a/tests/fsharpqa/Source/MultiTargeting/E_MissingReferenceToFSharpCore20.fs +++ /dev/null @@ -1,7 +0,0 @@ -// #Regression #Multitargeting #NoMono -// Regression test for FSHARP1.0:4800 - see also TFS#795597 -// ICE when referencing NetFx2.0 (mscorlib), but not referencing the 2.0 FSharp.Core.dll -// The code here does not really matter. -// - -exit 0 diff --git a/tests/fsharpqa/Source/MultiTargeting/env.lst b/tests/fsharpqa/Source/MultiTargeting/env.lst index 7cf6c4b4bf7..e527a758fe4 100644 --- a/tests/fsharpqa/Source/MultiTargeting/env.lst +++ b/tests/fsharpqa/Source/MultiTargeting/env.lst @@ -1,3 +1,2 @@ -NOMONO SOURCE=E_MissingReferenceToFSharpCore20.fs SCFLAGS="--noframework -r %WINDIR%\\Microsoft.NET\\Framework\\v4.0.30319\\mscorlib.dll" # E_MissingReferenceToFSharpCore20.fs NOMONO SOURCE=E_BadPathToFSharpCore.fs SCFLAGS="--noframework -r %WINDIR%\\Microsoft.NET\\Framework\\v4.0.30319\\mscorlib.dll -r I_DO_NOT_EXIST\\FSharp.Core.dll" # E_BadPathToFSharpCore.fs NOMONO SOURCE=E_BadPathToFSharpCore.fsx SCFLAGS="--noframework -r %WINDIR%\\Microsoft.NET\\Framework\\v4.0.30319\\mscorlib.dll -r I_DO_NOT_EXIST\\FSharp.Core.dll" # E_BadPathToFSharpCore.fsx diff --git a/tests/fsharpqa/Source/Optimizations/ForLoop/ForEachOnList01.il.bsl b/tests/fsharpqa/Source/Optimizations/ForLoop/ForEachOnList01.il.bsl index 14d6a854963..9f27fbb483b 100644 --- a/tests/fsharpqa/Source/Optimizations/ForLoop/ForEachOnList01.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/ForLoop/ForEachOnList01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly ForEachOnList01 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.ForEachOnList01 { - // Offset: 0x00000000 Length: 0x000002ED + // Offset: 0x00000000 Length: 0x000002E7 } .mresource public FSharpOptimizationData.ForEachOnList01 { - // Offset: 0x000002F8 Length: 0x000000DB + // Offset: 0x000002F0 Length: 0x000000DB } .module ForEachOnList01.dll -// MVID: {59B18AEE-56DF-F74F-A745-0383EE8AB159} +// MVID: {5D79DDCE-56DF-F74F-A745-0383CEDD795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x002D0000 +// Image base: 0x055A0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -72,7 +77,7 @@ // Code size 4 (0x4) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 39,39 : 21,26 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\ForLoop\\ForEachOnList01.fs' + .line 39,39 : 21,26 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\ForLoop\\ForEachOnList01.fs' IL_0000: ldarg.1 IL_0001: ldc.i4.1 IL_0002: add @@ -362,7 +367,7 @@ IL_002e: ldstr "%A" IL_0033: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,int32>::.ctor(string) IL_0038: stloc.s V_4 - IL_003a: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_003a: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_003f: ldloc.s V_4 IL_0041: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter>(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) @@ -424,7 +429,7 @@ IL_003c: ldstr "%O" IL_0041: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,int32>::.ctor(string) IL_0046: stloc.3 - IL_0047: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_0047: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_004c: ldloc.3 IL_004d: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter>(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) @@ -493,7 +498,7 @@ IL_0040: ldstr "%O" IL_0045: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,int32>::.ctor(string) IL_004a: stloc.s V_4 - IL_004c: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_004c: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_0051: ldloc.s V_4 IL_0053: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter>(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) diff --git a/tests/fsharpqa/Source/Optimizations/ForLoop/ForEachOnString01.il.bsl b/tests/fsharpqa/Source/Optimizations/ForLoop/ForEachOnString01.il.bsl index 0db8de85fcc..f61700da01e 100644 --- a/tests/fsharpqa/Source/Optimizations/ForLoop/ForEachOnString01.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/ForLoop/ForEachOnString01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly ForEachOnString01 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.ForEachOnString01 { - // Offset: 0x00000000 Length: 0x00000354 + // Offset: 0x00000000 Length: 0x0000034E } .mresource public FSharpOptimizationData.ForEachOnString01 { // Offset: 0x00000358 Length: 0x000000FF } .module ForEachOnString01.dll -// MVID: {59B18AEE-105C-852B-A745-0383EE8AB159} +// MVID: {5D79DDCE-105C-852B-A745-0383CEDD795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x002D0000 +// Image base: 0x06AF0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -72,7 +77,7 @@ // Code size 6 (0x6) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 55,55 : 21,39 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\ForLoop\\ForEachOnString01.fs' + .line 55,55 : 21,39 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\ForLoop\\ForEachOnString01.fs' IL_0000: ldarg.1 IL_0001: conv.i4 IL_0002: ldc.i4.1 @@ -140,7 +145,7 @@ .line 9,9 : 6,21 '' IL_0011: ldarg.0 IL_0012: ldloc.2 - IL_0013: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0013: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0018: stloc.3 IL_0019: ldloc.0 IL_001a: ldloc.3 @@ -187,7 +192,7 @@ .line 14,14 : 6,23 '' IL_0015: ldstr "123" IL_001a: ldloc.2 - IL_001b: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_001b: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0020: stloc.3 IL_0021: ldloc.0 IL_0022: ldloc.3 @@ -234,7 +239,7 @@ .line 20,20 : 6,20 '' IL_0015: ldstr "123" IL_001a: ldloc.2 - IL_001b: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_001b: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0020: stloc.3 IL_0021: ldloc.0 IL_0022: ldloc.3 @@ -281,7 +286,7 @@ .line 26,26 : 6,20 '' IL_0015: ldstr "123" IL_001a: ldloc.2 - IL_001b: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_001b: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0020: stloc.3 IL_0021: ldloc.0 IL_0022: ldloc.3 @@ -325,12 +330,12 @@ .line 31,31 : 6,20 '' IL_0013: ldstr "123" IL_0018: ldloc.1 - IL_0019: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0019: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_001e: stloc.2 IL_001f: ldstr "%A" IL_0024: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,char>::.ctor(string) IL_0029: stloc.3 - IL_002a: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_002a: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_002f: ldloc.3 IL_0030: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter>(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) @@ -377,7 +382,7 @@ .line 41,41 : 6,21 '' IL_0011: ldarg.0 IL_0012: ldloc.2 - IL_0013: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0013: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0018: stloc.3 IL_0019: ldloc.0 IL_001a: ldloc.3 @@ -424,7 +429,7 @@ .line 47,47 : 6,20 '' IL_0015: ldstr "123" IL_001a: ldloc.2 - IL_001b: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_001b: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0020: stloc.3 IL_0021: ldloc.0 IL_0022: ldloc.3 @@ -475,12 +480,12 @@ .line 52,56 : 5,21 '' IL_001f: ldloc.0 IL_0020: ldloc.2 - IL_0021: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0021: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0026: stloc.3 IL_0027: ldstr "%O" IL_002c: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,char>::.ctor(string) IL_0031: stloc.s V_4 - IL_0033: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_0033: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_0038: ldloc.s V_4 IL_003a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter>(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) @@ -532,7 +537,7 @@ .line 61,65 : 5,21 '' IL_001f: ldloc.0 IL_0020: ldloc.2 - IL_0021: callvirt instance char [mscorlib]System.String::get_Chars(int32) + IL_0021: callvirt instance char [netstandard]System.String::get_Chars(int32) IL_0026: stloc.3 .line 66,66 : 9,53 '' IL_0027: ldstr "{0} foo" @@ -545,7 +550,7 @@ IL_0039: ldstr "%O" IL_003e: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string>::.ctor(string) IL_0043: stloc.s V_5 - IL_0045: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_0045: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_004a: ldloc.s V_5 IL_004c: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter>(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) diff --git a/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable01.il.bsl b/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable01.il.bsl index 41dcfaf2ed2..0d8b387cf48 100644 --- a/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable01.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable01.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly NoIEnumerable01 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.NoIEnumerable01 { - // Offset: 0x00000000 Length: 0x000001D1 + // Offset: 0x00000000 Length: 0x000001CB } .mresource public FSharpOptimizationData.NoIEnumerable01 { - // Offset: 0x000001D8 Length: 0x0000006C + // Offset: 0x000001D0 Length: 0x0000006C } .module NoIEnumerable01.dll -// MVID: {59B18AEE-31A1-8DCB-A745-0383EE8AB159} +// MVID: {5D79DDCE-31A1-8DCB-A745-0383CEDD795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x013E0000 +// Image base: 0x05430000 // =============== CLASS MEMBERS DECLARATION =================== @@ -59,7 +64,7 @@ [1] int32 i, [2] class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4 V_2) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 7,7 : 4,22 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\ForLoop\\NoIEnumerable01.fsx' + .line 7,7 : 4,22 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\ForLoop\\NoIEnumerable01.fsx' IL_0000: ldc.i4.1 IL_0001: stloc.1 IL_0002: ldarg.0 @@ -72,7 +77,7 @@ IL_0008: ldstr "aaa" IL_000d: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5::.ctor(string) IL_0012: stloc.2 - IL_0013: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_0013: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_0018: ldloc.2 IL_0019: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) diff --git a/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable02.il.bsl b/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable02.il.bsl index 12424f0aa91..b126731d738 100644 --- a/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable02.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable02.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly NoIEnumerable02 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.NoIEnumerable02 { - // Offset: 0x00000000 Length: 0x000001D1 + // Offset: 0x00000000 Length: 0x000001CB } .mresource public FSharpOptimizationData.NoIEnumerable02 { - // Offset: 0x000001D8 Length: 0x0000006C + // Offset: 0x000001D0 Length: 0x0000006C } .module NoIEnumerable02.dll -// MVID: {59B18AEE-5066-4012-A745-0383EE8AB159} +// MVID: {5D79DDCE-5066-4012-A745-0383CEDD795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x00720000 +// Image base: 0x06C10000 // =============== CLASS MEMBERS DECLARATION =================== @@ -59,7 +64,7 @@ [1] int32 i, [2] class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4 V_2) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 7,7 : 4,24 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\ForLoop\\NoIEnumerable02.fsx' + .line 7,7 : 4,24 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\ForLoop\\NoIEnumerable02.fsx' IL_0000: ldc.i4.s 100 IL_0002: stloc.1 IL_0003: ldarg.0 @@ -72,7 +77,7 @@ IL_0009: ldstr "aaa" IL_000e: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5::.ctor(string) IL_0013: stloc.2 - IL_0014: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_0014: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_0019: ldloc.2 IL_001a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) diff --git a/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable03.il.bsl b/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable03.il.bsl index 7223d4a04bd..046bba67f49 100644 --- a/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable03.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/ForLoop/NoIEnumerable03.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly NoIEnumerable03 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.NoIEnumerable03 { - // Offset: 0x00000000 Length: 0x000001DF + // Offset: 0x00000000 Length: 0x000001D9 } .mresource public FSharpOptimizationData.NoIEnumerable03 { - // Offset: 0x000001E8 Length: 0x0000006C + // Offset: 0x000001E0 Length: 0x0000006C } .module NoIEnumerable03.dll -// MVID: {59B18AEE-7903-6020-A745-0383EE8AB159} +// MVID: {5D79DDCE-7903-6020-A745-0383CEDD795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x01970000 +// Image base: 0x065A0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -61,7 +66,7 @@ [1] int32 i, [2] class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4 V_2) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 7,7 : 4,22 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\ForLoop\\NoIEnumerable03.fsx' + .line 7,7 : 4,22 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\ForLoop\\NoIEnumerable03.fsx' IL_0000: ldarg.0 IL_0001: stloc.1 IL_0002: ldarg.1 @@ -74,7 +79,7 @@ IL_0008: ldstr "aaa" IL_000d: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5::.ctor(string) IL_0012: stloc.2 - IL_0013: call class [mscorlib]System.IO.TextWriter [mscorlib]System.Console::get_Out() + IL_0013: call class [netstandard]System.IO.TextWriter [netstandard]System.Console::get_Out() IL_0018: ldloc.2 IL_0019: call !!0 [FSharp.Core]Microsoft.FSharp.Core.PrintfModule::PrintFormatLineToTextWriter(class [mscorlib]System.IO.TextWriter, class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4) diff --git a/tests/fsharpqa/Source/Optimizations/GenericComparison/Compare03.il.bsl b/tests/fsharpqa/Source/Optimizations/GenericComparison/Compare03.il.bsl index c31f8088d27..e8a0e7cc050 100644 --- a/tests/fsharpqa/Source/Optimizations/GenericComparison/Compare03.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/GenericComparison/Compare03.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Compare03 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Compare03 { - // Offset: 0x00000000 Length: 0x00000237 + // Offset: 0x00000000 Length: 0x00000231 } .mresource public FSharpOptimizationData.Compare03 { - // Offset: 0x00000240 Length: 0x000000B9 + // Offset: 0x00000238 Length: 0x000000B9 } .module Compare03.dll -// MVID: {59B18AEE-0562-F88E-A745-0383EE8AB159} +// MVID: {5D795707-0562-F88E-A745-03830757795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x002E0000 +// Image base: 0x04A20000 // =============== CLASS MEMBERS DECLARATION =================== @@ -65,7 +70,7 @@ [3] int32 V_3, [4] int32 V_4) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 5,5 : 8,25 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\GenericComparison\\Compare03.fsx' + .line 5,5 : 8,25 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\GenericComparison\\Compare03.fsx' IL_0000: ldc.i4.1 IL_0001: stloc.0 .line 8,8 : 8,32 '' @@ -118,8 +123,8 @@ .line 16707566,16707566 : 0,0 '' IL_002d: ldstr "five" IL_0032: ldstr "5" - IL_0037: call int32 [mscorlib]System.String::CompareOrdinal(string, - string) + IL_0037: call int32 [netstandard]System.String::CompareOrdinal(string, + string) .line 16707566,16707566 : 0,0 '' IL_003c: nop .line 16707566,16707566 : 0,0 '' diff --git a/tests/fsharpqa/Source/Optimizations/GenericComparison/Compare04.il.bsl b/tests/fsharpqa/Source/Optimizations/GenericComparison/Compare04.il.bsl index 0a5d7ed4b4f..b1043a37441 100644 --- a/tests/fsharpqa/Source/Optimizations/GenericComparison/Compare04.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/GenericComparison/Compare04.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Compare04 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Compare04 { - // Offset: 0x00000000 Length: 0x00000237 + // Offset: 0x00000000 Length: 0x00000231 } .mresource public FSharpOptimizationData.Compare04 { - // Offset: 0x00000240 Length: 0x000000B9 + // Offset: 0x00000238 Length: 0x000000B9 } .module Compare04.dll -// MVID: {59B18AEE-053B-F88E-A745-0383EE8AB159} +// MVID: {5D795707-053B-F88E-A745-03830757795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x013E0000 +// Image base: 0x06640000 // =============== CLASS MEMBERS DECLARATION =================== @@ -66,7 +71,7 @@ [4] int32 V_4, [5] int32 V_5) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 5,5 : 8,25 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\GenericComparison\\Compare04.fsx' + .line 5,5 : 8,25 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\GenericComparison\\Compare04.fsx' IL_0000: ldc.i4.1 IL_0001: stloc.0 .line 8,8 : 8,32 '' @@ -119,8 +124,8 @@ .line 16707566,16707566 : 0,0 '' IL_0039: ldstr "5" IL_003e: ldstr "5" - IL_0043: call int32 [mscorlib]System.String::CompareOrdinal(string, - string) + IL_0043: call int32 [netstandard]System.String::CompareOrdinal(string, + string) IL_0048: stloc.s V_5 IL_004a: ldloc.s V_5 IL_004c: brfalse.s IL_0053 diff --git a/tests/fsharpqa/Source/Optimizations/GenericComparison/Equals02.il.bsl b/tests/fsharpqa/Source/Optimizations/GenericComparison/Equals02.il.bsl index aa7bbc68da5..af76b49311b 100644 --- a/tests/fsharpqa/Source/Optimizations/GenericComparison/Equals02.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/GenericComparison/Equals02.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:3:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Equals02 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Equals02 { - // Offset: 0x00000000 Length: 0x0000023C + // Offset: 0x00000000 Length: 0x0000022E } .mresource public FSharpOptimizationData.Equals02 { - // Offset: 0x00000240 Length: 0x000000B6 + // Offset: 0x00000238 Length: 0x000000B6 } .module Equals02.dll -// MVID: {5B18753B-0759-B6D8-A745-03833B75185B} +// MVID: {5D795707-0759-B6D8-A745-03830757795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x00F20000 +// Image base: 0x057E0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -57,23 +62,24 @@ .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 ) .method public static bool f4_tuple4() cil managed { - // Code size 44 (0x2c) + // Code size 36 (0x24) .maxstack 4 .locals init ([0] bool x, [1] int32 i) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 5,5 : 8,29 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\GenericComparison\\Equals02.fsx' + .line 5,5 : 8,29 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\GenericComparison\\Equals02.fsx' IL_0000: ldc.i4.0 IL_0001: stloc.0 .line 8,8 : 8,32 '' IL_0002: ldc.i4.0 IL_0003: stloc.1 IL_0004: br.s IL_001a + .line 9,9 : 12,26 '' IL_0006: ldstr "five" IL_000b: ldstr "5" - IL_0010: call bool [mscorlib]System.String::Equals(string, - string) + IL_0010: call bool [netstandard]System.String::Equals(string, + string) IL_0015: stloc.0 IL_0016: ldloc.1 IL_0017: ldc.i4.1 @@ -83,17 +89,22 @@ IL_001a: ldloc.1 IL_001b: ldc.i4 0x989681 IL_0020: blt.s IL_0006 + .line 10,10 : 8,9 '' IL_0022: ldloc.0 IL_0023: ret } // end of method EqualsMicroPerfAndCodeGenerationTests::f4_tuple4 + } // end of class EqualsMicroPerfAndCodeGenerationTests + } // end of class Equals02 + .class private abstract auto ansi sealed ''.$Equals02$fsx extends [mscorlib]System.Object { } // end of class ''.$Equals02$fsx + // ============================================================= // *********** DISASSEMBLY COMPLETE *********************** diff --git a/tests/fsharpqa/Source/Optimizations/GenericComparison/Equals03.il.bsl b/tests/fsharpqa/Source/Optimizations/GenericComparison/Equals03.il.bsl index e222d314825..ea065654124 100644 --- a/tests/fsharpqa/Source/Optimizations/GenericComparison/Equals03.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/GenericComparison/Equals03.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:3:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Equals03 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Equals03 { - // Offset: 0x00000000 Length: 0x0000023C + // Offset: 0x00000000 Length: 0x0000022E } .mresource public FSharpOptimizationData.Equals03 { - // Offset: 0x00000240 Length: 0x000000B6 + // Offset: 0x00000238 Length: 0x000000B6 } .module Equals03.dll -// MVID: {5B18753B-0759-3313-A745-03833B75185B} +// MVID: {5D795707-0759-3313-A745-03830757795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x02630000 +// Image base: 0x07130000 // =============== CLASS MEMBERS DECLARATION =================== @@ -62,7 +67,7 @@ .locals init ([0] bool x, [1] int32 i) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 5,5 : 8,29 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\GenericComparison\\Equals03.fsx' + .line 5,5 : 8,29 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\GenericComparison\\Equals03.fsx' IL_0000: ldc.i4.0 IL_0001: stloc.0 .line 8,8 : 8,32 '' @@ -73,8 +78,8 @@ .line 9,9 : 12,26 '' IL_0006: ldstr "5" IL_000b: ldstr "5" - IL_0010: call bool [mscorlib]System.String::Equals(string, - string) + IL_0010: call bool [netstandard]System.String::Equals(string, + string) IL_0015: brfalse.s IL_002e .line 16707566,16707566 : 0,0 '' diff --git a/tests/fsharpqa/Source/Optimizations/GenericComparison/Hash03.il.bsl b/tests/fsharpqa/Source/Optimizations/GenericComparison/Hash03.il.bsl index 94e5977da05..e0ad518aaf9 100644 --- a/tests/fsharpqa/Source/Optimizations/GenericComparison/Hash03.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/GenericComparison/Hash03.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Hash03 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Hash03 { - // Offset: 0x00000000 Length: 0x00000220 + // Offset: 0x00000000 Length: 0x0000021A } .mresource public FSharpOptimizationData.Hash03 { - // Offset: 0x00000228 Length: 0x000000B0 + // Offset: 0x00000220 Length: 0x000000B0 } .module Hash03.dll -// MVID: {59B18AEE-9642-788D-A745-0383EE8AB159} +// MVID: {5D795707-9642-788D-A745-03830757795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x02DA0000 +// Image base: 0x074B0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -62,7 +67,7 @@ .locals init ([0] int32 x, [1] int32 i) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 5,5 : 8,25 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\GenericComparison\\Hash03.fsx' + .line 5,5 : 8,25 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\GenericComparison\\Hash03.fsx' IL_0000: ldc.i4.1 IL_0001: stloc.0 .line 7,7 : 8,32 '' @@ -74,7 +79,7 @@ IL_0006: ldc.i4 0x483 IL_000b: ldc.i4.s 99 IL_000d: ldstr "5" - IL_0012: call instance int32 [mscorlib]System.String::GetHashCode() + IL_0012: call instance int32 [netstandard]System.String::GetHashCode() IL_0017: xor IL_0018: xor IL_0019: stloc.0 diff --git a/tests/fsharpqa/Source/Optimizations/GenericComparison/Hash04.il.bsl b/tests/fsharpqa/Source/Optimizations/GenericComparison/Hash04.il.bsl index 79b1e6d5ad9..edea25acd5f 100644 --- a/tests/fsharpqa/Source/Optimizations/GenericComparison/Hash04.il.bsl +++ b/tests/fsharpqa/Source/Optimizations/GenericComparison/Hash04.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.7.3081.0 // Copyright (c) Microsoft Corporation. All rights reserved. @@ -13,7 +13,12 @@ .assembly extern FSharp.Core { .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: - .ver 4:4:1:0 + .ver 5:0:0:0 +} +.assembly extern netstandard +{ + .publickeytoken = (CC 7B 13 FF CD 2D DD 51 ) // .{...-.Q + .ver 2:0:0:0 } .assembly Hash04 { @@ -29,20 +34,20 @@ } .mresource public FSharpSignatureData.Hash04 { - // Offset: 0x00000000 Length: 0x00000220 + // Offset: 0x00000000 Length: 0x0000021A } .mresource public FSharpOptimizationData.Hash04 { - // Offset: 0x00000228 Length: 0x000000B0 + // Offset: 0x00000220 Length: 0x000000B0 } .module Hash04.dll -// MVID: {59B18AEE-9642-7838-A745-0383EE8AB159} +// MVID: {5D795707-9642-7838-A745-03830757795D} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x012B0000 +// Image base: 0x06D90000 // =============== CLASS MEMBERS DECLARATION =================== @@ -62,7 +67,7 @@ .locals init ([0] int32 x, [1] int32 i) .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 5,5 : 8,25 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\Optimizations\\GenericComparison\\Hash04.fsx' + .line 5,5 : 8,25 'C:\\kevinransom\\fsharp\\tests\\fsharpqa\\source\\Optimizations\\GenericComparison\\Hash04.fsx' IL_0000: ldc.i4.1 IL_0001: stloc.0 .line 7,7 : 8,32 '' @@ -74,7 +79,7 @@ IL_0006: ldc.i4 0x483 IL_000b: ldc.i4.s 99 IL_000d: ldstr "5" - IL_0012: call instance int32 [mscorlib]System.String::GetHashCode() + IL_0012: call instance int32 [netstandard]System.String::GetHashCode() IL_0017: xor IL_0018: xor IL_0019: stloc.0 diff --git a/tests/fsharpqa/testenv/src/ILComparer/ILComparer.fsproj b/tests/fsharpqa/testenv/src/ILComparer/ILComparer.fsproj index c530b623a40..80b7af8303a 100644 --- a/tests/fsharpqa/testenv/src/ILComparer/ILComparer.fsproj +++ b/tests/fsharpqa/testenv/src/ILComparer/ILComparer.fsproj @@ -2,7 +2,7 @@ - net45 + net472 Exe true true diff --git a/tests/projects/misc/ProjectWithBuildErrors/ProjectWithBuildErrors/ProjectWithBuildErrors.fsproj b/tests/projects/misc/ProjectWithBuildErrors/ProjectWithBuildErrors/ProjectWithBuildErrors.fsproj index b1a44ceda79..cbe401fc4fd 100644 --- a/tests/projects/misc/ProjectWithBuildErrors/ProjectWithBuildErrors/ProjectWithBuildErrors.fsproj +++ b/tests/projects/misc/ProjectWithBuildErrors/ProjectWithBuildErrors/ProjectWithBuildErrors.fsproj @@ -2,7 +2,7 @@ - net452 + net472 4.4.1.0 diff --git a/tests/projects/misc/SameFileBelongsToMultipleProjects/Library2/Library2.fsproj b/tests/projects/misc/SameFileBelongsToMultipleProjects/Library2/Library2.fsproj index 090a7331af6..e49df7a66cf 100644 --- a/tests/projects/misc/SameFileBelongsToMultipleProjects/Library2/Library2.fsproj +++ b/tests/projects/misc/SameFileBelongsToMultipleProjects/Library2/Library2.fsproj @@ -2,7 +2,7 @@ - net452 + net472 4.4.1.0 diff --git a/tests/projects/misc/SameFileBelongsToMultipleProjects/SameFileBelongsToMultipleProjects/SameFileBelongsToMultipleProjects.fsproj b/tests/projects/misc/SameFileBelongsToMultipleProjects/SameFileBelongsToMultipleProjects/SameFileBelongsToMultipleProjects.fsproj index f8ab90c7837..fd64e230fcf 100644 --- a/tests/projects/misc/SameFileBelongsToMultipleProjects/SameFileBelongsToMultipleProjects/SameFileBelongsToMultipleProjects.fsproj +++ b/tests/projects/misc/SameFileBelongsToMultipleProjects/SameFileBelongsToMultipleProjects/SameFileBelongsToMultipleProjects.fsproj @@ -2,7 +2,7 @@ - net452> + net472 4.4.1.0 diff --git a/tests/projects/misc/TestProjectChanges/Library1AlwaysInMatchingConfiguration/Library1AlwaysInMatchingConfiguration.fsproj b/tests/projects/misc/TestProjectChanges/Library1AlwaysInMatchingConfiguration/Library1AlwaysInMatchingConfiguration.fsproj index 7b711f61660..576ab3674ab 100644 --- a/tests/projects/misc/TestProjectChanges/Library1AlwaysInMatchingConfiguration/Library1AlwaysInMatchingConfiguration.fsproj +++ b/tests/projects/misc/TestProjectChanges/Library1AlwaysInMatchingConfiguration/Library1AlwaysInMatchingConfiguration.fsproj @@ -2,7 +2,7 @@ - net452 + net472 4.4.1.0 diff --git a/tests/projects/misc/TestProjectChanges/Library2AlwaysInDebugConfiguration/Library2AlwaysInDebugConfiguration.fsproj b/tests/projects/misc/TestProjectChanges/Library2AlwaysInDebugConfiguration/Library2AlwaysInDebugConfiguration.fsproj index 7b711f61660..576ab3674ab 100644 --- a/tests/projects/misc/TestProjectChanges/Library2AlwaysInDebugConfiguration/Library2AlwaysInDebugConfiguration.fsproj +++ b/tests/projects/misc/TestProjectChanges/Library2AlwaysInDebugConfiguration/Library2AlwaysInDebugConfiguration.fsproj @@ -2,7 +2,7 @@ - net452 + net472 4.4.1.0 diff --git a/tests/projects/misc/TestProjectChanges/TestProjectChanges/TestProjectChanges.fsproj b/tests/projects/misc/TestProjectChanges/TestProjectChanges/TestProjectChanges.fsproj index 3c5f9cd080f..2462434e222 100644 --- a/tests/projects/misc/TestProjectChanges/TestProjectChanges/TestProjectChanges.fsproj +++ b/tests/projects/misc/TestProjectChanges/TestProjectChanges/TestProjectChanges.fsproj @@ -2,7 +2,7 @@ - net452 + net472 4.4.1.0 diff --git a/tests/service/Common.fs b/tests/service/Common.fs index 6920e682afe..df8f8034b14 100644 --- a/tests/service/Common.fs +++ b/tests/service/Common.fs @@ -89,10 +89,7 @@ let mkStandardProjectReferences () = let projDir = Path.Combine(__SOURCE_DIRECTORY__, "../projects/Sample_NETCoreSDK_FSharp_Library_netstandard2_0") readRefs projDir file #else - [ yield sysLib "mscorlib" - yield sysLib "System" - yield sysLib "System.Core" - yield fsCoreDefaultReference() ] + [ yield fsCoreDefaultReference() ] #endif let mkProjectCommandLineArgsSilent (dllName, fileNames) = diff --git a/tests/service/FileSystemTests.fs b/tests/service/FileSystemTests.fs index 24b45414fd2..28b7f2f7307 100644 --- a/tests/service/FileSystemTests.fs +++ b/tests/service/FileSystemTests.fs @@ -96,9 +96,8 @@ let ``FileSystem compilation test``() = yield "--fullpaths"; yield "--flaterrors"; yield "--target:library"; - for r in [ sysLib "mscorlib"; sysLib "System"; sysLib "System.Core"; fsCoreDefaultReference() ] do - yield "-r:" + r |] - + for r in [ fsCoreDefaultReference() ] do yield "-r:" + r |] + { ProjectFileName = @"c:\mycode\compilation.fsproj" // Make a name that is unique in this directory. ProjectId = None SourceFiles = [| fileName1; fileName2 |] diff --git a/tests/service/MultiProjectAnalysisTests.fs b/tests/service/MultiProjectAnalysisTests.fs index 04ba820da0d..f119341fac8 100644 --- a/tests/service/MultiProjectAnalysisTests.fs +++ b/tests/service/MultiProjectAnalysisTests.fs @@ -140,7 +140,7 @@ let ``Test multi project 1 whole project errors`` () = printfn "multi project 1 error: <<<%s>>>" e.Message wholeProjectResults .Errors.Length |> shouldEqual 0 - wholeProjectResults.ProjectContext.GetReferencedAssemblies().Length |> shouldEqual 6 + wholeProjectResults.ProjectContext.GetReferencedAssemblies().Length |> shouldEqual 8 [] let ``Test multi project 1 basic`` () = @@ -327,7 +327,7 @@ let ``Test ManyProjectsStressTest whole project errors`` () = printfn "ManyProjectsStressTest error: <<<%s>>>" e.Message wholeProjectResults .Errors.Length |> shouldEqual 0 - wholeProjectResults.ProjectContext.GetReferencedAssemblies().Length |> shouldEqual (ManyProjectsStressTest.numProjectsForStressTest + 4) + wholeProjectResults.ProjectContext.GetReferencedAssemblies().Length |> shouldEqual (ManyProjectsStressTest.numProjectsForStressTest + 6) [] let ``Test ManyProjectsStressTest basic`` () = diff --git a/tests/service/ProjectAnalysisTests.fs b/tests/service/ProjectAnalysisTests.fs index c9635c70830..13e2342f367 100644 --- a/tests/service/ProjectAnalysisTests.fs +++ b/tests/service/ProjectAnalysisTests.fs @@ -3647,7 +3647,6 @@ let ``Test symbol uses of properties with both getters and setters`` () = // Misc - type provider symbols module internal Project25 = open System.IO - let fileName1 = Path.ChangeExtension(Path.GetTempFileName(), ".fs") let base2 = Path.GetTempFileName() let dllName = Path.ChangeExtension(base2, ".dll") @@ -3667,10 +3666,11 @@ let _ = XmlProvider<"13">.GetSample() let cleanFileName a = if a = fileName1 then "file1" else "??" let fileNames = [fileName1] - let args = - [| yield! mkProjectCommandLineArgs (dllName, fileNames) - yield @"-r:" + Path.Combine(__SOURCE_DIRECTORY__, Path.Combine("data", "FSharp.Data.dll")) - yield @"-r:" + sysLib "System.Xml.Linq" |] + let args = + [| yield! mkProjectCommandLineArgs (dllName, fileNames) + yield @"-r:" + Path.Combine(__SOURCE_DIRECTORY__, Path.Combine("data", "FSharp.Data")) + yield @"-r:" + sysLib "System.Xml.Linq" + |] let options = checker.GetProjectOptionsFromCommandLineArgs (projFileName, args) [] diff --git a/tests/service/data/CSharp_Analysis/CSharp_Analysis.csproj b/tests/service/data/CSharp_Analysis/CSharp_Analysis.csproj index 4fc4184b23d..83dd398ddf0 100644 --- a/tests/service/data/CSharp_Analysis/CSharp_Analysis.csproj +++ b/tests/service/data/CSharp_Analysis/CSharp_Analysis.csproj @@ -2,7 +2,7 @@ - net45 + net472 1.0.0.0 nunit $(NoWarn);0067;1591 diff --git a/tests/service/data/TestTP/TestTP.fsproj b/tests/service/data/TestTP/TestTP.fsproj index c56ec5f349b..66087982151 100644 --- a/tests/service/data/TestTP/TestTP.fsproj +++ b/tests/service/data/TestTP/TestTP.fsproj @@ -2,7 +2,7 @@ - net45 + net472 true nunit diff --git a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj index 1d2074f907b..ef5bc98ce79 100644 --- a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj +++ b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj @@ -103,7 +103,7 @@ All 2 True - TargetFramework=net45 + TargetFramework=netstandard2.0 {8B3E283D-B5FE-4055-9D80-7E3A32F3967B} diff --git a/vsintegration/tests/MockTypeProviders/DefinitionLocationAttribute/DefinitionLocationAttribute.csproj b/vsintegration/tests/MockTypeProviders/DefinitionLocationAttribute/DefinitionLocationAttribute.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/DefinitionLocationAttribute/DefinitionLocationAttribute.csproj +++ b/vsintegration/tests/MockTypeProviders/DefinitionLocationAttribute/DefinitionLocationAttribute.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeFileDoesnotExist/DefinitionLocationAttributeFileDoesnotExist.csproj b/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeFileDoesnotExist/DefinitionLocationAttributeFileDoesnotExist.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeFileDoesnotExist/DefinitionLocationAttributeFileDoesnotExist.csproj +++ b/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeFileDoesnotExist/DefinitionLocationAttributeFileDoesnotExist.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeLineDoesnotExist/DefinitionLocationAttributeLineDoesnotExist.csproj b/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeLineDoesnotExist/DefinitionLocationAttributeLineDoesnotExist.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeLineDoesnotExist/DefinitionLocationAttributeLineDoesnotExist.csproj +++ b/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeLineDoesnotExist/DefinitionLocationAttributeLineDoesnotExist.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeWithSpaceInTheType/DefinitionLocationAttributeWithSpaceInTheType.csproj b/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeWithSpaceInTheType/DefinitionLocationAttributeWithSpaceInTheType.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeWithSpaceInTheType/DefinitionLocationAttributeWithSpaceInTheType.csproj +++ b/vsintegration/tests/MockTypeProviders/DefinitionLocationAttributeWithSpaceInTheType/DefinitionLocationAttributeWithSpaceInTheType.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/DummyProviderForLanguageServiceTesting/DummyProviderForLanguageServiceTesting.fsproj b/vsintegration/tests/MockTypeProviders/DummyProviderForLanguageServiceTesting/DummyProviderForLanguageServiceTesting.fsproj index 0fb60c539a1..28541d96ad1 100644 --- a/vsintegration/tests/MockTypeProviders/DummyProviderForLanguageServiceTesting/DummyProviderForLanguageServiceTesting.fsproj +++ b/vsintegration/tests/MockTypeProviders/DummyProviderForLanguageServiceTesting/DummyProviderForLanguageServiceTesting.fsproj @@ -3,7 +3,7 @@ - net45 + net472 true diff --git a/vsintegration/tests/MockTypeProviders/EditorHideMethodsAttribute/EditorHideMethodsAttribute.csproj b/vsintegration/tests/MockTypeProviders/EditorHideMethodsAttribute/EditorHideMethodsAttribute.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/EditorHideMethodsAttribute/EditorHideMethodsAttribute.csproj +++ b/vsintegration/tests/MockTypeProviders/EditorHideMethodsAttribute/EditorHideMethodsAttribute.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/EmptyAssembly/EmptyAssembly.fsproj b/vsintegration/tests/MockTypeProviders/EmptyAssembly/EmptyAssembly.fsproj index 5f0e7a69b63..295d1dc0e0c 100644 --- a/vsintegration/tests/MockTypeProviders/EmptyAssembly/EmptyAssembly.fsproj +++ b/vsintegration/tests/MockTypeProviders/EmptyAssembly/EmptyAssembly.fsproj @@ -3,7 +3,7 @@ - net45 + net472 true diff --git a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithAdequateComment/XmlDocAttributeWithAdequateComment.csproj b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithAdequateComment/XmlDocAttributeWithAdequateComment.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithAdequateComment/XmlDocAttributeWithAdequateComment.csproj +++ b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithAdequateComment/XmlDocAttributeWithAdequateComment.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithEmptyComment/XmlDocAttributeWithEmptyComment.csproj b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithEmptyComment/XmlDocAttributeWithEmptyComment.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithEmptyComment/XmlDocAttributeWithEmptyComment.csproj +++ b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithEmptyComment/XmlDocAttributeWithEmptyComment.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithLocalizedComment/XmlDocAttributeWithLocalizedComment.csproj b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithLocalizedComment/XmlDocAttributeWithLocalizedComment.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithLocalizedComment/XmlDocAttributeWithLocalizedComment.csproj +++ b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithLocalizedComment/XmlDocAttributeWithLocalizedComment.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithLongComment/XmlDocAttributeWithLongComment.csproj b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithLongComment/XmlDocAttributeWithLongComment.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithLongComment/XmlDocAttributeWithLongComment.csproj +++ b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithLongComment/XmlDocAttributeWithLongComment.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithNullComment/XmlDocAttributeWithNullComment.csproj b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithNullComment/XmlDocAttributeWithNullComment.csproj index f5f0216e9f8..0fdc04a774a 100644 --- a/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithNullComment/XmlDocAttributeWithNullComment.csproj +++ b/vsintegration/tests/MockTypeProviders/XmlDocAttributeWithNullComment/XmlDocAttributeWithNullComment.csproj @@ -3,7 +3,7 @@ - net45 + net472 diff --git a/vsintegration/tests/Salsa/salsa.fs b/vsintegration/tests/Salsa/salsa.fs index 52f2de8c902..c093c6bc307 100644 --- a/vsintegration/tests/Salsa/salsa.fs +++ b/vsintegration/tests/Salsa/salsa.fs @@ -657,16 +657,16 @@ module internal Salsa = Append " " - for (reference,specificVersion) in references do - Append (sprintf " " reference) + for (reference, specificVersion) in references do + Append (sprintf " " reference) if specificVersion then - Append (sprintf " true") - Append (sprintf " ") + Append (sprintf " true") + Append (sprintf " ") for projectReference in projectReferences do - Append (sprintf " " projectReference) + Append (sprintf " " projectReference) Append " SomeReferencedProject" - Append " {45636601-CA91-4382-B8BB-3DBD03BF3F56}" + Append " {45636601-CA91-4382-B8BB-3DBD03BF3F56}" Append " " for (file,buildAction,link) in files do diff --git a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.Completion.fs b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.Completion.fs index a1ea76e7172..93e190f1c66 100644 --- a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.Completion.fs +++ b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.Completion.fs @@ -14,7 +14,7 @@ open UnitTests.TestLib.ProjectSystem [] module StandardSettings = - let standard40AssemblyRefs = [ "System"; "System.Core"; "System.Numerics" ] + let standard40AssemblyRefs = [ "System"; "System.Core"; "System.Numerics"; "netstandard" ] let queryAssemblyRefs = [ "System.Xml.Linq"; "System.Core" ] type Expectation = | QuickInfoExpected of string * string @@ -36,7 +36,7 @@ type UsingMSBuild() as this = | code -> this.CreateSingleFileProject(code, fileKind = fileKind, references = refs) file - let DoWithAutoCompleteUsingExtraRefs refs coffeeBreak fileKind reason (code : list) marker f = + let DoWithAutoCompleteUsingExtraRefs refs coffeeBreak fileKind reason (code : list) marker f = // Up to 2 untyped parse operations are OK: we do an initial parse to provide breakpoint valdiation etc. // This might be before the before the background builder is ready to process the foreground typecheck. // In this case the background builder calls us back when its ready, and we then request a foreground typecheck @@ -4403,7 +4403,7 @@ let x = query { for bbbb in abbbbc(*D0*) do MoveCursorToEndOfMarker(file,"System.Windows.") let completions = AutoCompleteAtCursor(file) printfn "Completions=%A" completions - Assert.AreEqual(1, completions.Length) + Assert.AreEqual(3, completions.Length) // System.Windows.Forms, System.Windows.Input, System.Windows.Markdown /// Tests whether we're correctly showing both type and module when they have the same name [] diff --git a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ParameterInfo.fs b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ParameterInfo.fs index 5b05e438935..3813c4f797d 100644 --- a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ParameterInfo.fs +++ b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.ParameterInfo.fs @@ -13,7 +13,7 @@ open UnitTests.TestLib.ProjectSystem [] module ParamInfoStandardSettings = - let standard40AssemblyRefs = [| "System"; "System.Core"; "System.Numerics" |] + let standard40AssemblyRefs = [ ] let queryAssemblyRefs = [ "System.Xml.Linq"; "System.Core" ] [] diff --git a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.QuickInfo.fs b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.QuickInfo.fs index 09f358678df..0a9ae1ba176 100644 --- a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.QuickInfo.fs +++ b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.QuickInfo.fs @@ -13,7 +13,7 @@ open UnitTests.TestLib.ProjectSystem [] module QuickInfoStandardSettings = - let standard40AssemblyRefs = [ "System"; "System.Core"; "System.Numerics" ] + let standard40AssemblyRefs = [ ] let queryAssemblyRefs = [ "System.Xml.Linq"; "System.Core" ] [] diff --git a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.Script.fs b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.Script.fs index cd1589117ad..3c5a481ead6 100644 --- a/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.Script.fs +++ b/vsintegration/tests/UnitTests/LegacyLanguageService/Tests.LanguageService.Script.fs @@ -912,10 +912,10 @@ type UsingMSBuild() as this = AssertContains(tooltip, @"mscorlib.dll]") // The assembly we expect the documentation to get taken from MoveCursorToEndOfMarker(file, "(3).ToString().Len") - let tooltip = GetQuickInfoAtCursor file - AssertContains(tooltip, @"[Signature:P:System.String.Length]") // A message from the mock IDocumentationBuilder - AssertContains(tooltip, @"[Filename:") - AssertContains(tooltip, @"mscorlib.dll]") // The assembly we expect the documentation to get taken from + let tooltip2 = GetQuickInfoAtCursor file + AssertContains(tooltip2, @"[Signature:P:System.String.Length]") // A message from the mock IDocumentationBuilder + AssertContains(tooltip2, @"[Filename:") + AssertContains(tooltip2, @"netstandard.dll]") // The assembly we expect the documentation to get taken from // Especially under 4.0 we need #r of .NET framework assemblies to resolve from like, // diff --git a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Configs.fs b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Configs.fs index ff06f80bac6..b0457fbec1a 100644 --- a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Configs.fs +++ b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Configs.fs @@ -105,116 +105,3 @@ type Config() = [|"Any CPU"|] // the goal of the test - when no platforms, "AnyCPU" should magically appear finally File.Delete tmpTargets - - [] - member this.``Configs.Renaming`` () = - this.MakeProjectAndDoWithProjectFile(["foo.fs"], [], - this.MSBuildProjectMultiConfigBoilerplate ["Debug",""; "Release",""], - (fun project projFileName -> - this.CheckConfigNames(project, [|"Debug"; "Release"|]) - project.ConfigProvider.RenameCfgsOfCfgName("Debug", "Buggy") |> AssertEqual VSConstants.S_OK - this.CheckConfigNames(project, [|"Buggy";"Release"|]) - SaveProject(project) - let fsprojFileText = File.ReadAllText(projFileName) - let xDoc = XDocument.Load(new StringReader(fsprojFileText)) - let expected = this.MSBuildProjectMultiConfigBoilerplate ["Buggy",""; "Release",""] - let expectedXDoc = XDocument.Load(new StringReader(TheTests.SimpleFsprojText(["foo.fs"],[],expected))) - TheTests.AssertSimilarXml(expectedXDoc.Root, xDoc.Root) - )) - - [] - member this.``Configs.Deleting`` () = - this.MakeProjectAndDoWithProjectFile(["foo.fs"], [], - this.MSBuildProjectMultiConfigBoilerplate ["Debug",""; "Release",""], - (fun project projFileName -> - this.CheckConfigNames(project, [|"Debug";"Release"|]) - project.ConfigProvider.DeleteCfgsOfCfgName("Debug") |> AssertEqual VSConstants.S_OK - this.CheckConfigNames(project, [|"Release"|]) - SaveProject(project) - let fsprojFileText = File.ReadAllText(projFileName) - let xDoc = XDocument.Load(new StringReader(fsprojFileText)) - let expected = this.MSBuildProjectMultiConfigBoilerplate ["Release",""] - let expectedXDoc = XDocument.Load(new StringReader(TheTests.SimpleFsprojText(["foo.fs"],[],expected))) - TheTests.AssertSimilarXml(expectedXDoc.Root, xDoc.Root) - )) - [] - member this.``Configs.Adding`` () = - this.MakeProjectAndDoWithProjectFile(["foo.fs"], [], - this.MSBuildProjectMultiConfigBoilerplate ["Debug",""; "Release",""], - (fun project projFileName -> - this.CheckConfigNames(project, [|"Debug";"Release"|]) - project.ConfigProvider.AddCfgsOfCfgName("Buzz", "Debug", 0) |> AssertEqual VSConstants.S_OK - this.CheckConfigNames(project, [|"Debug";"Release";"Buzz"|]) - SaveProject(project) - let fsprojFileText = File.ReadAllText(projFileName) - let xDoc = XDocument.Load(new StringReader(fsprojFileText)) - let expected = this.MSBuildProjectMultiConfigBoilerplate ["Debug",""; "Release",""; "Buzz",""] - let expectedXDoc = XDocument.Load(new StringReader(TheTests.SimpleFsprojText(["foo.fs"],[],expected))) - TheTests.AssertSimilarXml(expectedXDoc.Root, xDoc.Root) - )) - [] - member this.``Configs.AddingBaseless`` () = - this.MakeProjectAndDoWithProjectFile(["foo.fs"], [], - this.MSBuildProjectMultiConfigBoilerplate ["Debug",""; "Release",""], - (fun project projFileName -> - this.CheckConfigNames(project, [|"Debug";"Release"|]) - project.ConfigProvider.AddCfgsOfCfgName("Buzz", null, 0) |> AssertEqual VSConstants.S_OK - this.CheckConfigNames(project, [|"Debug";"Release";"Buzz"|]) - SaveProject(project) - let fsprojFileText = File.ReadAllText(projFileName) - let xDoc = XDocument.Load(new StringReader(fsprojFileText)) - let expected = this.MSBuildProjectMultiConfigBoilerplate ["Debug",""; "Release",""; "Buzz",""] - let expectedXDoc = XDocument.Load(new StringReader(TheTests.SimpleFsprojText(["foo.fs"],[],expected))) - TheTests.AssertSimilarXml(expectedXDoc.Root, xDoc.Root) - )) - - [] - member this.``Configs.Platforms.Deleting`` () = - this.MakeProjectAndDoWithProjectFile(["foo.fs"], [], - this.MSBuildProjectMultiPlatform ["Any CPU",""; "x86",""], - (fun project projFileName -> - this.CheckPlatformNames(project, [|"Any CPU";"x86"|]) - project.ConfigProvider.DeleteCfgsOfPlatformName("Any CPU") |> AssertEqual VSConstants.S_OK - this.CheckPlatformNames(project, [|"x86"|]) - SaveProject(project) - let fsprojFileText = File.ReadAllText(projFileName) - let xDoc = XDocument.Load(new StringReader(fsprojFileText)) - let expected = this.MSBuildProjectMultiPlatform ["x86",""] - let expectedXDoc = XDocument.Load(new StringReader(TheTests.SimpleFsprojText(["foo.fs"],[],expected))) - TheTests.AssertSimilarXml(expectedXDoc.Root, xDoc.Root) - - )) - - [] - member this.``Configs.Platforms.Adding`` () = - this.MakeProjectAndDoWithProjectFile(["foo.fs"], [], - this.MSBuildProjectMultiPlatform ["Any CPU",""; "x86",""], - (fun project projFileName -> - this.CheckPlatformNames(project, [|"Any CPU";"x86"|]) - project.ConfigProvider.AddCfgsOfPlatformName("x64", "x86") |> AssertEqual VSConstants.S_OK - this.CheckPlatformNames(project, [|"Any CPU";"x86";"x64"|]) - SaveProject(project) - let fsprojFileText = File.ReadAllText(projFileName) - let xDoc = XDocument.Load(new StringReader(fsprojFileText)) - let expected = this.MSBuildProjectMultiPlatform ["Any CPU",""; "x86",""; "x64",""] - let expectedXDoc = XDocument.Load(new StringReader(TheTests.SimpleFsprojText(["foo.fs"],[],expected))) - TheTests.AssertSimilarXml(expectedXDoc.Root, xDoc.Root) - - )) - - [] - member this.``Configs.Platforms.AddingBaseless`` () = - this.MakeProjectAndDoWithProjectFile(["foo.fs"], [], - this.MSBuildProjectMultiPlatform ["Any CPU",""; "x86",""], - (fun project projFileName -> - this.CheckPlatformNames(project, [|"Any CPU";"x86"|]) - project.ConfigProvider.AddCfgsOfPlatformName("x64", null) |> AssertEqual VSConstants.S_OK - this.CheckPlatformNames(project, [|"Any CPU";"x86";"x64"|]) - SaveProject(project) - let fsprojFileText = File.ReadAllText(projFileName) - let xDoc = XDocument.Load(new StringReader(fsprojFileText)) - let expected = this.MSBuildProjectMultiPlatform ["Any CPU",""; "x86",""; "x64",""] - let expectedXDoc = XDocument.Load(new StringReader(TheTests.SimpleFsprojText(["foo.fs"],[],expected))) - TheTests.AssertSimilarXml(expectedXDoc.Root, xDoc.Root) - - )) diff --git a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Miscellaneous.fs b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Miscellaneous.fs index 1f5dfff2054..cea2d4b4485 100644 --- a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Miscellaneous.fs +++ b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Miscellaneous.fs @@ -257,7 +257,7 @@ type Miscellaneous() = l.[0] let l = new List() refContainer.FindNodesOfType(l) - AssertEqual 1 l.Count + AssertEqual 4 l.Count )) [] diff --git a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.MultiTargeting.fs b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.MultiTargeting.fs index f1b699a428c..a4cc6fb3a6a 100644 --- a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.MultiTargeting.fs +++ b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.MultiTargeting.fs @@ -43,9 +43,11 @@ type MultiTargeting() = use project = TheTests.CreateProject(projFile, "true", ccn, sp) let l = new List() project.FindNodesOfType(l) - Assert.AreEqual(1, l.Count) + Assert.AreEqual(4, l.Count) Assert.AreEqual(refLibPath, l.[0].Url) - Assert.AreEqual(refLibPath, l.[0].Caption) + Assert.AreEqual("netstandard", l.[1].Caption) + Assert.AreEqual("System", l.[2].Caption) + Assert.AreEqual("System.Numerics", l.[3].Caption) let ref = l.[0] Assert.AreEqual(true, ref.CanShowDefaultIcon()) ) @@ -58,9 +60,12 @@ type MultiTargeting() = use project = TheTests.CreateProject(projFile, "true", ccn, sp) let l = new List() project.FindNodesOfType(l) - Assert.AreEqual(1, l.Count) + Assert.AreEqual(4, l.Count) Assert.AreEqual(refLibPath, l.[0].Url) Assert.AreEqual(refLibPath, l.[0].Caption) + Assert.AreEqual("netstandard", l.[1].Caption) + Assert.AreEqual("System", l.[2].Caption) + Assert.AreEqual("System.Numerics", l.[3].Caption) let ref = l.[0] Assert.AreEqual(true, ref.CanShowDefaultIcon()) ) diff --git a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Project.fs b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Project.fs index 87994c1949f..b69b8dff068 100644 --- a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Project.fs +++ b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.Project.fs @@ -232,26 +232,26 @@ type Project() = AssertEqualMsg false (fsprojFileText.Contains(toVerify)) "it was not removed from the .fsproj on disk" )) - [] - member public this.``Removal.RemoveReferenceShouldDirtyProjectFileAndBeSeenOnDiskAfterSave``() = - let items = MSBuildItems([CompileItem "foo.fs"; CompileItem "bar.fs"]) - this.MakeProjectAndDoWithProjectFile([], ["System"], items.ToString(), (fun project fileName -> - let toVerify = @"] + //member public this.``Removal.RemoveReferenceShouldDirtyProjectFileAndBeSeenOnDiskAfterSave``() = + // let items = MSBuildItems([CompileItem "foo.fs"; CompileItem "bar.fs"]) + // this.MakeProjectAndDoWithProjectFile([], [], items.ToString(), (fun project fileName -> + // let toVerify = @"] member public this.``FsprojFileToSolutionExplorer.FileMovement.MoveUpShouldDirtyProject``() = diff --git a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.ProjectItems.fs b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.ProjectItems.fs index 43a7857c8a5..96187ebcc4a 100644 --- a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.ProjectItems.fs +++ b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.ProjectItems.fs @@ -40,7 +40,6 @@ type ProjectItems() = ) Assert.IsFalse(!wasCalled, "No events from IVsTrackProjectDocuments2 are expected") - Assert.IsFalse(containsSystemNumerics(), "Project should not contains reference to System.Numerics") )) [] diff --git a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.References.fs b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.References.fs index 0727925db6f..a87a93797f3 100644 --- a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.References.fs +++ b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.References.fs @@ -76,8 +76,11 @@ type References() = refContainer.AddReferenceFromSelectorData(selectorData) |> Assert.IsNotNull let l = new List() project.FindNodesOfType(l) - Assert.AreEqual(1, l.Count) - Assert.AreEqual("System.Windows.Forms", l.[0].Caption) + Assert.AreEqual(4, l.Count) + Assert.AreEqual("netstandard", l.[0].Caption) + Assert.AreEqual("System", l.[1].Caption) + Assert.AreEqual("System.Numerics", l.[2].Caption) + Assert.AreEqual("System.Windows.Forms", l.[3].Caption) SaveProject(project) let fsprojFileText = File.ReadAllText(project.FileName) printfn "%s" fsprojFileText @@ -90,7 +93,7 @@ type References() = // Let's create a run-of-the-mill project just to have a spare assembly around this.CreateDummyTestProjectBuildItAndDo(fun exe -> Assert.IsTrue(File.Exists exe, "failed to build exe") - this.MakeProjectAndDoWithProjectFile(["doesNotMatter.fs"], ["mscorlib"; "System"; "System.Core"; "System.Net"], + this.MakeProjectAndDoWithProjectFile(["doesNotMatter.fs"], ["mscorlib"; "System"; "System.Core"; "System.Net"; "netstandard"], ".\\Test.dll", "v4.0", (fun project file -> let assemRef = TheTests.FindNodeWithCaption(project, "Test") :?> AssemblyReferenceNode Assert.IsFalse(assemRef.CanShowDefaultIcon(), "reference should be banged out, does not resolve") @@ -107,7 +110,7 @@ type References() = // Let's create a run-of-the-mill project just to have a spare assembly around this.CreateDummyTestProjectBuildItAndDo(fun exe -> Assert.IsTrue(File.Exists exe, "failed to build exe") - this.MakeProjectAndDoWithProjectFile(["doesNotMatter.fs"], ["mscorlib"; "System"; "System.Core"; "System.Net"], + this.MakeProjectAndDoWithProjectFile(["doesNotMatter.fs"], ["mscorlib"; "System"; "System.Core"; "System.Net"; "netstandard"], sprintf "%s" exe, "v4.0", (fun project file -> let assemRef = TheTests.FindNodeWithCaption(project, "Test") :?> AssemblyReferenceNode Assert.IsTrue(assemRef.CanShowDefaultIcon(), "reference should not be banged out, does resolve") @@ -124,11 +127,16 @@ type References() = [] member public this.``ReferenceResolution.Bug4423.LoadedFsProj.Works``() = - this.MakeProjectAndDo(["doesNotMatter.fs"], ["mscorlib"; "System"; "System.Core"; "System.Net"], "", "v4.0", (fun project -> + this.MakeProjectAndDo(["doesNotMatter.fs"], ["mscorlib"; "System"; "System.Core"; "System.Net"; "netstandard"], "", "v4.0", (fun project -> let expectedRefInfo = [ "mscorlib", true + "netstandard", true + "netstandard", true + "System", true "System", true "System.Core", true - "System.Net", true ] + "System.Net", true + "System.Numerics", true] + let refContainer = GetReferenceContainerNode(project) let actualRefInfo = [ let r = ref(refContainer.FirstChild :?> ReferenceNode) @@ -139,12 +147,15 @@ type References() = AssertEqual expectedRefInfo actualRefInfo )) - [] member public this.``ReferenceResolution.Bug4423.LoadedFsProj.WithExactDuplicates``() = this.MakeProjectAndDo(["doesNotMatter.fs"], ["System"; "System"], "", "v4.0", (fun project -> - let expectedRefInfo = [ "System", true // In C#, one will be banged out, whereas - "System", true] // one will be ok, but in F# both show up as ok. Bug? Not worth the effort to fix. + let expectedRefInfo = [ "netstandard", true + "System", true // In C#, one will be banged out, whereas + "System", true // one will be ok, but in F# both show up as ok. Bug? Not worth the effort to fix. + "System", true + "System.Numerics", true ] + let refContainer = GetReferenceContainerNode(project) let actualRefInfo = [ let r = ref(refContainer.FirstChild :?> ReferenceNode) @@ -158,8 +169,12 @@ type References() = [] member public this.``ReferenceResolution.Bug4423.LoadedFsProj.WithBadDuplicates``() = this.MakeProjectAndDo(["doesNotMatter.fs"], ["System"; "System.dll"], "", "v4.0", (fun project -> - let expectedRefInfo = [ "System", false // one will be banged out - "System.dll", true] // one will be ok + let expectedRefInfo = [ "netstandard", true + "System", true + "System", true + "System.dll", false + "System.Numerics", true] + let refContainer = GetReferenceContainerNode(project) let actualRefInfo = [ let r = ref(refContainer.FirstChild :?> ReferenceNode) @@ -175,7 +190,11 @@ type References() = let netDir = currentFrameworkDirectory let ssmw = Path.Combine(netDir, "System.ServiceModel.Web.dll") this.MakeProjectAndDo(["doesNotMatter.fs"], [ssmw], "", "v4.0", (fun project -> - let expectedRefInfo = [ ssmw, true ] + let expectedRefInfo = [ ssmw, true + "netstandard", true + "System", true + "System.Numerics", true] + let refContainer = GetReferenceContainerNode(project) let actualRefInfo = [ let r = ref(refContainer.FirstChild :?> ReferenceNode) @@ -190,9 +209,14 @@ type References() = member public this.``ReferenceResolution.Bug4423.LoadedFsProj.WeirdCases``() = this.MakeProjectAndDo(["doesNotMatter.fs"], ["mscorlib, Version=4.0.0.0"; "System, Version=4.0.0.0"; "System.Core, Version=4.0.0.0"; "System.Net, Version=4.0.0.0"], "", "v4.0", (fun project -> let expectedRefInfo = [ "mscorlib", true + "netstandard", true; "System", true + "System, Version=4.0.0.0", false "System.Core, Version=4.0.0.0", false // msbuild does funny things for System.Core (TODO bug number) - "System.Net", true ] + "System.Net", true + "System.Numerics", true + ] + let refContainer = GetReferenceContainerNode(project) let actualRefInfo = [ let r = ref(refContainer.FirstChild :?> ReferenceNode) @@ -423,10 +447,16 @@ type References() = use project = TheTests.CreateProject(projFile) let l = new List() project.FindNodesOfType(l) - AssertEqual 1 l.Count + AssertEqual 4 l.Count AssertEqual refLibPath l.[0].Url AssertEqual refLibPath l.[0].Caption // when Include is a filename, entirety is caption Assert.IsNotNull(l.[0].ResolvedAssembly) + AssertEqual "netstandard" l.[1].Caption + Assert.IsNotNull(l.[1].ResolvedAssembly) + AssertEqual "System" l.[2].Caption + Assert.IsNotNull(l.[2].ResolvedAssembly) + AssertEqual "System.Numerics" l.[3].Caption + Assert.IsNotNull(l.[3].ResolvedAssembly) let refContainer = let l = new List() project.FindNodesOfType(l) @@ -434,12 +464,19 @@ type References() = let mscorlibPath = (new Uri("".GetType().Assembly.EscapedCodeBase)).LocalPath let selectorData = new VSCOMPONENTSELECTORDATA(``type`` = VSCOMPONENTTYPE.VSCOMPONENTTYPE_ComPlus, bstrFile = mscorlibPath) refContainer.AddReferenceFromSelectorData(selectorData) |> Assert.IsNotNull - let l = new List() - project.FindNodesOfType(l) - AssertEqual 2 l.Count - AssertEqual refLibPath l.[0].Url - AssertEqual refLibPath l.[0].Caption - AssertEqual "mscorlib" l.[1].Caption + let l2 = new List() + project.FindNodesOfType(l2) + AssertEqual 5 l2.Count + AssertEqual refLibPath l2.[0].Url + AssertEqual refLibPath l2.[0].Caption + AssertEqual "mscorlib" l2.[1].Caption + Assert.IsNotNull(l2.[1].ResolvedAssembly) + AssertEqual "netstandard" l2.[2].Caption + Assert.IsNotNull(l2.[2].ResolvedAssembly) + AssertEqual "System" l2.[3].Caption + Assert.IsNotNull(l2.[3].ResolvedAssembly) + AssertEqual "System.Numerics" l2.[4].Caption + Assert.IsNotNull(l2.[4].ResolvedAssembly) ) [] @@ -453,11 +490,16 @@ type References() = use project = TheTests.CreateProject(projFile) let l = new List() project.FindNodesOfType(l) - AssertEqual 2 l.Count - AssertEqual "System.dll" l.[0].Caption + AssertEqual 5 l.Count + AssertEqual "netstandard" l.[0].Caption Assert.IsNotNull(l.[0].ResolvedAssembly) - AssertEqual "System.Net.dll" l.[1].Caption + AssertEqual "System" l.[1].Caption Assert.IsNotNull(l.[1].ResolvedAssembly) + AssertEqual "System.dll" l.[2].Caption + AssertEqual "System.Net.dll" l.[3].Caption + Assert.IsNotNull(l.[3].ResolvedAssembly) + AssertEqual "System.Numerics" l.[4].Caption + Assert.IsNotNull(l.[4].ResolvedAssembly) ) [] @@ -468,7 +510,7 @@ type References() = use project = TheTests.CreateProject(projFile) let l = new List() project.FindNodesOfType(l) - AssertEqual 1 l.Count + AssertEqual 4 l.Count AssertEqual refLibPath l.[0].Caption Assert.IsNull(l.[0].ResolvedAssembly) ) diff --git a/vsintegration/tests/UnitTests/TestLib.ProjectSystem.fs b/vsintegration/tests/UnitTests/TestLib.ProjectSystem.fs index 0cd346e1314..933cae8eddb 100644 --- a/vsintegration/tests/UnitTests/TestLib.ProjectSystem.fs +++ b/vsintegration/tests/UnitTests/TestLib.ProjectSystem.fs @@ -384,7 +384,7 @@ type TheTests() = {0} Blah Blah - v4.0 + v4.7.2 512 Blah @@ -408,7 +408,7 @@ type TheTests() = {0} Blah Blah - v4.0 + v4.7.2 512 Blah @@ -471,7 +471,7 @@ type TheTests() = Library Blah Blah - v4.0 + v4.7.2 512 Blah "