зеркало из https://github.com/dotnet/fsharp.git
Netstandard2.0 FSharp.Core in master + netcoreapp3.1 fix for tests (#9870)
* Net Standard 2.0 only FSharp.Core (#9801) * Net standard only FSharp.Core * temp * Cherry-pick of FSharp.Core netstandard + fix for netcoreapp3.1 tests * Fixed netcoreapp30 -> netcoreapp31 test references * Cleaned up projects, added testplatform package, moved some tests to new suite * Tests changes * Revert accidental revert * Added missing tests * Cleaned up packages, fixed tests * Add System.Runtime to references Co-authored-by: Kevin Ransom (msft) <codecutter@hotmail.com>
This commit is contained in:
Родитель
b42686c3c8
Коммит
8b24224632
|
@ -52,7 +52,7 @@ Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.Private.Scr
|
|||
EndProject
|
||||
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "DependencyManager", "src\fsharp\Microsoft.DotNet.DependencyManager\Microsoft.DotNet.DependencyManager.fsproj", "{B5A043F8-6D7F-4D4E-B8AD-5880070180B6}"
|
||||
EndProject
|
||||
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FSharp.Compiler.ComponentTests", "tests\FSharp.Compiler.ComponentTests\FSharp.Compiler.ComponentTests.fsproj", "{FAC5A3BF-C0D6-437A-868A-E962AA00B418}"
|
||||
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.ComponentTests", "tests\FSharp.Compiler.ComponentTests\FSharp.Compiler.ComponentTests.fsproj", "{FAC5A3BF-C0D6-437A-868A-E962AA00B418}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "fsharpqa", "fsharpqa", "{292C4F92-A313-4CAF-9552-731F39C6C21F}"
|
||||
EndProject
|
||||
|
|
|
@ -140,8 +140,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NuGet", "NuGet", "{647810D0
|
|||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.FSharp.Compiler", "src\fsharp\FSharp.Compiler.nuget\Microsoft.FSharp.Compiler.csproj", "{04C59F6E-1C76-4F6A-AC21-2EA7F296A1B8}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FSharp.Core.nuget", "src\fsharp\FSharp.Core.nuget\FSharp.Core.nuget.csproj", "{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}"
|
||||
EndProject
|
||||
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.Private.Scripting", "src\fsharp\FSharp.Compiler.Private.Scripting\FSharp.Compiler.Private.Scripting.fsproj", "{20B7BC36-CF51-4D75-9E13-66681C07977F}"
|
||||
EndProject
|
||||
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.Private.Scripting.UnitTests", "tests\FSharp.Compiler.Private.Scripting.UnitTests\FSharp.Compiler.Private.Scripting.UnitTests.fsproj", "{09F56540-AFA5-4694-B7A6-0DBF6D4618C2}"
|
||||
|
@ -832,18 +830,6 @@ Global
|
|||
{04C59F6E-1C76-4F6A-AC21-2EA7F296A1B8}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{04C59F6E-1C76-4F6A-AC21-2EA7F296A1B8}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{04C59F6E-1C76-4F6A-AC21-2EA7F296A1B8}.Release|x86.Build.0 = Release|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Proto|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Proto|Any CPU.Build.0 = Release|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Proto|x86.ActiveCfg = Release|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Proto|x86.Build.0 = Release|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC}.Release|x86.Build.0 = Release|Any CPU
|
||||
{20B7BC36-CF51-4D75-9E13-66681C07977F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{20B7BC36-CF51-4D75-9E13-66681C07977F}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{20B7BC36-CF51-4D75-9E13-66681C07977F}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
|
@ -1017,7 +1003,6 @@ Global
|
|||
{E93E7D28-1C6B-4E04-BE83-68428CF7E039} = {6235B3AF-774D-4EA1-8F37-789E767F6368}
|
||||
{9482211E-23D0-4BD0-9893-E4AA5559F67A} = {6235B3AF-774D-4EA1-8F37-789E767F6368}
|
||||
{04C59F6E-1C76-4F6A-AC21-2EA7F296A1B8} = {647810D0-5307-448F-99A2-E83917010DAE}
|
||||
{8EC30B2E-F1F9-4A98-BBB5-DD0CF6C84DDC} = {647810D0-5307-448F-99A2-E83917010DAE}
|
||||
{20B7BC36-CF51-4D75-9E13-66681C07977F} = {B8DDA694-7939-42E3-95E5-265C2217C142}
|
||||
{09F56540-AFA5-4694-B7A6-0DBF6D4618C2} = {CFE3259A-2D30-4EB0-80D5-E8B5F3D01449}
|
||||
{DFA30881-C0B1-4813-B087-C21B5AF9B77F} = {3881429D-A97A-49EB-B7AE-A82BA5FE9C77}
|
||||
|
|
|
@ -505,8 +505,10 @@ try {
|
|||
|
||||
if ($testCompiler) {
|
||||
if (-not $noVisualStudio) {
|
||||
TestUsingNUnit -testProject "$RepoRoot\tests\FSharp.Compiler.ComponentTests\FSharp.Compiler.ComponentTests.fsproj" -targetFramework $desktopTargetFramework
|
||||
TestUsingNUnit -testProject "$RepoRoot\tests\FSharp.Compiler.UnitTests\FSharp.Compiler.UnitTests.fsproj" -targetFramework $desktopTargetFramework
|
||||
}
|
||||
TestUsingNUnit -testProject "$RepoRoot\tests\FSharp.Compiler.ComponentTests\FSharp.Compiler.ComponentTests.fsproj" -targetFramework $coreclrTargetFramework
|
||||
TestUsingNUnit -testProject "$RepoRoot\tests\FSharp.Compiler.UnitTests\FSharp.Compiler.UnitTests.fsproj" -targetFramework $coreclrTargetFramework
|
||||
}
|
||||
|
||||
|
|
|
@ -174,6 +174,7 @@
|
|||
<MicrosoftCompositionVersion>1.0.30</MicrosoftCompositionVersion>
|
||||
<MicrosoftMSXMLVersion>8.0.0-alpha</MicrosoftMSXMLVersion>
|
||||
<MicrosoftNetCompilersVersion>2.7.0</MicrosoftNetCompilersVersion>
|
||||
<MicrosoftNETCoreAppRefVersion>3.1.0</MicrosoftNETCoreAppRefVersion>
|
||||
<MicrosoftNETCoreILDAsmVersion>3.0.0-preview-27318-01</MicrosoftNETCoreILDAsmVersion>
|
||||
<MicrosoftNETCoreILAsmVersion>3.0.0-preview-27318-01</MicrosoftNETCoreILAsmVersion>
|
||||
<MicrosoftNETTestSdkVersion>16.6.1</MicrosoftNETTestSdkVersion>
|
||||
|
|
|
@ -19,6 +19,11 @@
|
|||
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
|
||||
<GenerateDocumentationFile>true</GenerateDocumentationFile>
|
||||
<DebugType>embedded</DebugType>
|
||||
<MicrosoftBuildOverallPackagesVersion>16.6</MicrosoftBuildOverallPackagesVersion>
|
||||
<MicrosoftBuildVersion>$(MicrosoftBuildOverallPackagesVersion)</MicrosoftBuildVersion>
|
||||
<MicrosoftBuildFrameworkVersion>$(MicrosoftBuildOverallPackagesVersion)</MicrosoftBuildFrameworkVersion>
|
||||
<MicrosoftBuildTasksCoreVersion>$(MicrosoftBuildOverallPackagesVersion)</MicrosoftBuildTasksCoreVersion>
|
||||
<MicrosoftBuildUtilitiesCoreVersion>$(MicrosoftBuildOverallPackagesVersion)</MicrosoftBuildUtilitiesCoreVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<Summary>The F# compiler as library. For editors, for tools, for scripting. For you.</Summary>
|
||||
|
@ -723,6 +728,9 @@
|
|||
<PackageReference Include="System.Buffers" Version="4.5.0" />
|
||||
<PackageReference Include="System.Memory" Version="4.5.3" />
|
||||
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" />
|
||||
<PackageReference Include="Microsoft.Build.Framework" Version="$(MicrosoftBuildVersion)" />
|
||||
<PackageReference Include="Microsoft.Build.Tasks.Core" Version="$(MicrosoftBuildVersion)" />
|
||||
<PackageReference Include="Microsoft.Build.Utilities.Core" Version="$(MicrosoftBuildVersion)" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="'$(TargetFramework)' == 'netstandard2.0'">
|
||||
<PackageReference Include="System.Reflection.Emit" Version="4.3.0" />
|
||||
|
|
|
@ -20,6 +20,8 @@
|
|||
<FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net462'">$(BaseFrameworkPathOverrideForMono)/4.6.2-api</FrameworkPathOverride>
|
||||
<FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net47'">$(BaseFrameworkPathOverrideForMono)/4.7-api</FrameworkPathOverride>
|
||||
<FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net471'">$(BaseFrameworkPathOverrideForMono)/4.7.1-api</FrameworkPathOverride>
|
||||
<FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net472'">$(BaseFrameworkPathOverrideForMono)/4.7.2-api</FrameworkPathOverride>
|
||||
<FrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != '' AND '$(TargetFramework)' == 'net48'">$(BaseFrameworkPathOverrideForMono)/4.8-api</FrameworkPathOverride>
|
||||
<EnableFrameworkPathOverride Condition="'$(BaseFrameworkPathOverrideForMono)' != ''">true</EnableFrameworkPathOverride>
|
||||
|
||||
<!-- Add the Facades directory. Not sure how else to do this. Necessary at least for .NET 4.5 -->
|
||||
|
|
|
@ -48,7 +48,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"
|
||||
]]>
|
||||
</_Line>
|
||||
</PropertyGroup>
|
||||
|
@ -98,9 +98,9 @@ folder "InstallDir:Common7\IDE\CommonExtensions\Microsoft\FSharp"
|
|||
file source="$(BinariesFolder)\FSharp.Compiler.Private\$(Configuration)\$(TargetFramework)\System.Runtime.CompilerServices.Unsafe.dll"
|
||||
file source="$(BinariesFolder)\FSharp.Compiler.Private\$(Configuration)\$(TargetFramework)\System.Threading.Tasks.Dataflow.dll"
|
||||
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.Core\$(Configuration)\netstandard2.0\FSharp.Core.optdata"
|
||||
file source="$(BinariesFolder)\FSharp.Core\$(Configuration)\netstandard2.0\FSharp.Core.sigdata"
|
||||
file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\$(TargetFramework)\FSharp.Build.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
|
||||
file source="$(BinariesFolder)\Microsoft.DotNet.DependencyManager\$(Configuration)\net472\Microsoft.DotNet.DependencyManager.dll" vs.file.ngen=yes vs.file.ngenArchitecture=All vs.file.ngenPriority=2
|
||||
file source="$(BinariesFolder)\FSharp.Build\$(Configuration)\$(TargetFramework)\Microsoft.Build.Framework.dll"
|
||||
|
|
|
@ -3700,12 +3700,17 @@ type TcAssemblyResolutions(tcConfig: TcConfig, results: AssemblyResolution list,
|
|||
|
||||
static member GetAllDllReferences (tcConfig: TcConfig) = [
|
||||
let primaryReference = tcConfig.PrimaryAssemblyDllReference()
|
||||
//yield primaryReference
|
||||
|
||||
let assumeDotNetFramework = primaryReference.SimpleAssemblyNameIs("mscorlib")
|
||||
|
||||
if not tcConfig.compilingFslib then
|
||||
yield tcConfig.CoreLibraryDllReference()
|
||||
if assumeDotNetFramework then
|
||||
// When building desktop then we need these additional dependencies
|
||||
yield AssemblyReference(rangeStartup, "System.Numerics.dll", None)
|
||||
yield AssemblyReference(rangeStartup, "System.dll", None)
|
||||
yield AssemblyReference(rangeStartup, "netstandard.dll", None)
|
||||
|
||||
let assumeDotNetFramework = primaryReference.SimpleAssemblyNameIs("mscorlib")
|
||||
if tcConfig.framework then
|
||||
for s in defaultReferencesForScriptsAndOutOfProjectSources tcConfig.useFsiAuxLib assumeDotNetFramework tcConfig.useSdkRefs do
|
||||
yield AssemblyReference(rangeStartup, (if s.EndsWith(".dll", StringComparison.OrdinalIgnoreCase) then s else s+".dll"), None)
|
||||
|
@ -4107,7 +4112,6 @@ and [<Sealed>] TcImports(tcConfigP: TcConfigProvider, initialResolutions: TcAsse
|
|||
| None ->
|
||||
tcImports.ImplicitLoadIfAllowed(ctok, m, assemblyName, lookupOnly)
|
||||
look tcImports
|
||||
|
||||
|
||||
member tcImports.FindDllInfo (ctok, m, assemblyName) =
|
||||
match tcImports.TryFindDllInfo (ctok, m, assemblyName, lookupOnly=false) with
|
||||
|
@ -4784,7 +4788,7 @@ and [<Sealed>] TcImports(tcConfigP: TcConfigProvider, initialResolutions: TcAsse
|
|||
// If the user is asking for the default framework then also try to resolve other implicit assemblies as they are discovered.
|
||||
// Using this flag to mean 'allow implicit discover of assemblies'.
|
||||
let tcConfig = tcConfigP.Get ctok
|
||||
if not lookupOnly && tcConfig.implicitlyResolveAssemblies then
|
||||
if not lookupOnly && tcConfig.implicitlyResolveAssemblies then
|
||||
let tryFile speculativeFileName =
|
||||
let foundFile = tcImports.TryResolveAssemblyReference (ctok, AssemblyReference (m, speculativeFileName, None), ResolveAssemblyReferenceMode.Speculative)
|
||||
match foundFile with
|
||||
|
@ -4825,7 +4829,7 @@ and [<Sealed>] TcImports(tcConfigP: TcConfigProvider, initialResolutions: TcAsse
|
|||
ResultD [assemblyResolution]
|
||||
| None ->
|
||||
#if NO_MSBUILD_REFERENCE_RESOLUTION
|
||||
try
|
||||
try
|
||||
ResultD [tcConfig.ResolveLibWithDirectories assemblyReference]
|
||||
with e ->
|
||||
ErrorD e
|
||||
|
@ -4846,7 +4850,7 @@ and [<Sealed>] TcImports(tcConfigP: TcConfigProvider, initialResolutions: TcAsse
|
|||
ResultD [resolved]
|
||||
| None ->
|
||||
ErrorD(AssemblyNotResolved(assemblyReference.Text, assemblyReference.Range))
|
||||
else
|
||||
else
|
||||
// This is a previously unencountered assembly. Resolve it and add it to the list.
|
||||
// But don't cache resolution failures because the assembly may appear on the disk later.
|
||||
let resolved, unresolved = TcConfig.TryResolveLibsUsingMSBuildRules(tcConfig, [ assemblyReference ], assemblyReference.Range, mode)
|
||||
|
@ -4861,9 +4865,7 @@ and [<Sealed>] TcImports(tcConfigP: TcConfigProvider, initialResolutions: TcAsse
|
|||
// Note, if mode=ResolveAssemblyReferenceMode.Speculative and the resolution failed then TryResolveLibsUsingMSBuildRules returns
|
||||
// the empty list and we convert the failure into an AssemblyNotResolved here.
|
||||
ErrorD(AssemblyNotResolved(assemblyReference.Text, assemblyReference.Range))
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
member tcImports.ResolveAssemblyReference(ctok, assemblyReference, mode) : AssemblyResolution list =
|
||||
CommitOperationResult(tcImports.TryResolveAssemblyReference(ctok, assemblyReference, mode))
|
||||
|
|
|
@ -673,6 +673,8 @@ type TcImports =
|
|||
member ReportUnresolvedAssemblyReferences: UnresolvedAssemblyReference list -> unit
|
||||
member SystemRuntimeContainsType: string -> bool
|
||||
|
||||
member internal Base: TcImports option
|
||||
|
||||
static member BuildFrameworkTcImports : CompilationThreadToken * TcConfigProvider * AssemblyResolution list * AssemblyResolution list -> Cancellable<TcGlobals * TcImports>
|
||||
static member BuildNonFrameworkTcImports : CompilationThreadToken * TcConfigProvider * TcGlobals * TcImports * AssemblyResolution list * UnresolvedAssemblyReference list -> Cancellable<TcImports>
|
||||
static member BuildTcImports : CompilationThreadToken * TcConfigProvider -> Cancellable<TcGlobals * TcImports>
|
||||
|
|
|
@ -983,7 +983,9 @@ let advancedFlagsFsc tcConfigB =
|
|||
|
||||
yield CompilerOption
|
||||
("staticlink", tagFile,
|
||||
OptionString (fun s -> tcConfigB.extraStaticLinkRoots <- tcConfigB.extraStaticLinkRoots @ [s]), None,
|
||||
OptionString (fun s ->
|
||||
tcConfigB.extraStaticLinkRoots <- tcConfigB.extraStaticLinkRoots @ [s]
|
||||
tcConfigB.implicitlyResolveAssemblies <- true), None,
|
||||
Some (FSComp.SR.optsStaticlink()))
|
||||
|
||||
#if ENABLE_MONO_SUPPORT
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
<Project>
|
||||
|
||||
<PropertyGroup>
|
||||
<UseFSharpPackageVersion>true</UseFSharpPackageVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
|
||||
|
||||
</Project>
|
|
@ -1,20 +0,0 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk" ToolsVersion="15.0">
|
||||
|
||||
<PropertyGroup>
|
||||
<PreRelease>true</PreRelease>
|
||||
<TargetFrameworks>net45;netstandard2.0</TargetFrameworks>
|
||||
<PackageId>FSharp.Core</PackageId>
|
||||
<NuspecFile>FSharp.Core.nuspec</NuspecFile>
|
||||
<IsPackable>true</IsPackable>
|
||||
<PackageDescription>FSharp.Core redistributables from Visual F# Tools version $(FSPackageMajorVersion) For F# $(FSCoreMajorVersion). Contains code from the F# Software Foundation.</PackageDescription>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\FSharp.Core\FSharp.Core.fsproj">
|
||||
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="Build" />
|
||||
|
||||
</Project>
|
|
@ -4,8 +4,7 @@
|
|||
|
||||
<PropertyGroup>
|
||||
<OutputType>Library</OutputType>
|
||||
<TargetFrameworks>net45;netstandard2.0</TargetFrameworks>
|
||||
<TargetFrameworks Condition="'$(OS)' == 'Unix'">netstandard2.0</TargetFrameworks>
|
||||
<TargetFrameworks>netstandard2.0</TargetFrameworks>
|
||||
<NoWarn>$(NoWarn);45;55;62;75;1204</NoWarn>
|
||||
<AllowCrossTargeting>true</AllowCrossTargeting>
|
||||
<DefineConstants>$(DefineConstants);FSHARP_CORE</DefineConstants>
|
||||
|
@ -13,6 +12,12 @@
|
|||
<OtherFlags>$(OtherFlags) --warnon:1182 --compiling-fslib --compiling-fslib-40 --maxerrors:20 --extraoptimizationloops:1 --nowarn:57</OtherFlags>
|
||||
<Tailcalls>true</Tailcalls> <!-- .tail annotations always emitted for this binary, even in debug mode -->
|
||||
<NGenBinary>true</NGenBinary>
|
||||
|
||||
<PreRelease>true</PreRelease>
|
||||
<PackageId>FSharp.Core</PackageId>
|
||||
<NuspecFile>FSharp.Core.nuspec</NuspecFile>
|
||||
<IsPackable>true</IsPackable>
|
||||
<PackageDescription>FSharp.Core redistributables from Visual F# Tools version $(FSPackageMajorVersion) For F# $(FSCoreMajorVersion). Contains code from the F# Software Foundation.</PackageDescription>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
<language>en-US</language>
|
||||
<dependencies>
|
||||
<group targetFramework=".NETStandard2.0" />
|
||||
<group targetFramework="net45" />
|
||||
</dependencies>
|
||||
</metadata>
|
||||
<files>
|
||||
|
@ -16,13 +15,7 @@
|
|||
<file src="FSharp.Core\$Configuration$\netstandard2.0\FSharp.Core.optdata" target="lib\netstandard2.0" />
|
||||
<file src="FSharp.Core\$Configuration$\netstandard2.0\FSharp.Core.xml" target="lib\netstandard2.0" />
|
||||
|
||||
<file src="FSharp.Core\$Configuration$\net45\FSharp.Core.dll" target="lib\net45" />
|
||||
<file src="FSharp.Core\$Configuration$\net45\FSharp.Core.sigdata" target="lib\net45" />
|
||||
<file src="FSharp.Core\$Configuration$\net45\FSharp.Core.optdata" target="lib\net45" />
|
||||
<file src="FSharp.Core\$Configuration$\net45\FSharp.Core.xml" target="lib\net45" />
|
||||
|
||||
<!-- resources -->
|
||||
<file src="FSharp.Core\$Configuration$\netstandard2.0\**\FSharp.Core.resources.dll" target="lib\netstandard2.0" />
|
||||
<file src="FSharp.Core\$Configuration$\net45\**\FSharp.Core.resources.dll" target="lib\net45" />
|
||||
</files>
|
||||
</package>
|
|
@ -10,26 +10,90 @@ open System
|
|||
open System.IO
|
||||
open System.Reflection
|
||||
open Microsoft.Win32
|
||||
open Microsoft.Build.Utilities
|
||||
open FSharp.Compiler.ReferenceResolver
|
||||
open FSharp.Compiler.AbstractIL.Internal.Library
|
||||
|
||||
// ATTENTION!: the following code needs to be updated every time we are switching to the new MSBuild version because new .NET framework version was released
|
||||
// 1. List of frameworks
|
||||
// 2. DeriveTargetFrameworkDirectoriesFor45Plus
|
||||
// 3. HighestInstalledRefAssembliesOrDotNETFramework
|
||||
// 4. GetPathToDotNetFrameworkImlpementationAssemblies
|
||||
[<Literal>]
|
||||
let private Net45 = "v4.5"
|
||||
|
||||
[<Literal>]
|
||||
let private Net451 = "v4.5.1"
|
||||
|
||||
[<Literal>]
|
||||
let private Net452 = "v4.5.2" // not available in Dev15 MSBuild version
|
||||
|
||||
[<Literal>]
|
||||
let private Net46 = "v4.6"
|
||||
|
||||
[<Literal>]
|
||||
let private Net461 = "v4.6.1"
|
||||
|
||||
[<Literal>]
|
||||
let private Net462 = "v4.6.2"
|
||||
|
||||
[<Literal>]
|
||||
let private Net47 = "v4.7"
|
||||
|
||||
[<Literal>]
|
||||
let private Net471 = "v4.7.1"
|
||||
|
||||
[<Literal>]
|
||||
let private Net472 = "v4.7.2"
|
||||
|
||||
[<Literal>]
|
||||
let private Net48 = "v4.8"
|
||||
|
||||
let SupportedDesktopFrameworkVersions = [ Net48; Net472; Net471; Net47; Net462; Net461; Net46; Net452; Net451; Net45 ]
|
||||
|
||||
let private SimulatedMSBuildResolver =
|
||||
let supportedFrameworks = [|
|
||||
"v4.7.2"
|
||||
"v4.7.1"
|
||||
"v4.7"
|
||||
"v4.6.2"
|
||||
"v4.6.1"
|
||||
"v4.6"
|
||||
"v4.5.1"
|
||||
"v4.5"
|
||||
"v4.0"
|
||||
|]
|
||||
|
||||
/// Get the path to the .NET Framework implementation assemblies by using ToolLocationHelper.GetPathToDotNetFramework
|
||||
/// This is only used to specify the "last resort" path for assembly resolution.
|
||||
let GetPathToDotNetFrameworkImlpementationAssemblies(v) =
|
||||
let v =
|
||||
match v with
|
||||
| Net45 -> Some TargetDotNetFrameworkVersion.Version45
|
||||
| Net451 -> Some TargetDotNetFrameworkVersion.Version451
|
||||
#if MSBUILD_AT_LEAST_15
|
||||
| Net452 -> Some TargetDotNetFrameworkVersion.Version452
|
||||
| Net46 -> Some TargetDotNetFrameworkVersion.Version46
|
||||
| Net461 -> Some TargetDotNetFrameworkVersion.Version461
|
||||
| Net462 -> Some TargetDotNetFrameworkVersion.Version462
|
||||
| Net47 -> Some TargetDotNetFrameworkVersion.Version47
|
||||
| Net471 -> Some TargetDotNetFrameworkVersion.Version471
|
||||
| Net472 -> Some TargetDotNetFrameworkVersion.Version472
|
||||
| Net48 -> Some TargetDotNetFrameworkVersion.Version48
|
||||
#endif
|
||||
| _ -> assert false; None
|
||||
match v with
|
||||
| Some v ->
|
||||
match ToolLocationHelper.GetPathToDotNetFramework v with
|
||||
| null -> []
|
||||
| x -> [x]
|
||||
| _ -> []
|
||||
|
||||
let GetPathToDotNetFrameworkReferenceAssemblies(version) =
|
||||
#if NETSTANDARD
|
||||
ignore version
|
||||
let r : string list = []
|
||||
r
|
||||
#else
|
||||
match Microsoft.Build.Utilities.ToolLocationHelper.GetPathToStandardLibraries(".NETFramework",version,"") with
|
||||
| null | "" -> []
|
||||
| x -> [x]
|
||||
#endif
|
||||
|
||||
{ new Resolver with
|
||||
member x.HighestInstalledNetFrameworkVersion() =
|
||||
|
||||
let root = x.DotNetFrameworkReferenceAssembliesRootDirectory
|
||||
let fwOpt = supportedFrameworks |> Seq.tryFind(fun fw -> Directory.Exists(Path.Combine(root, fw) ))
|
||||
let fwOpt = SupportedDesktopFrameworkVersions |> Seq.tryFind(fun fw -> Directory.Exists(Path.Combine(root, fw) ))
|
||||
match fwOpt with
|
||||
| Some fw -> fw
|
||||
| None -> "v4.5"
|
||||
|
@ -86,6 +150,8 @@ let private SimulatedMSBuildResolver =
|
|||
if System.Environment.OSVersion.Platform = System.PlatformID.Win32NT then
|
||||
yield! registrySearchPaths()
|
||||
#endif
|
||||
yield! GetPathToDotNetFrameworkReferenceAssemblies targetFrameworkVersion
|
||||
yield! GetPathToDotNetFrameworkImlpementationAssemblies targetFrameworkVersion
|
||||
]
|
||||
|
||||
for (r, baggage) in references do
|
||||
|
|
|
@ -1314,7 +1314,7 @@ module StaticLinker =
|
|||
data=ilxMainModule // any old module
|
||||
edges = []
|
||||
visited = true }
|
||||
let assumedIndependentSet = set [ "mscorlib"; "System"; "System.Core"; "System.Xml"; "Microsoft.Build.Framework"; "Microsoft.Build.Utilities" ]
|
||||
let assumedIndependentSet = set [ "mscorlib"; "System"; "System.Core"; "System.Xml"; "Microsoft.Build.Framework"; "Microsoft.Build.Utilities"; "netstandard" ]
|
||||
|
||||
begin
|
||||
let mutable remaining = (computeILRefs ilGlobals ilxMainModule).AssemblyReferences
|
||||
|
@ -1324,7 +1324,7 @@ module StaticLinker =
|
|||
if assumedIndependentSet.Contains ilAssemRef.Name || (ilAssemRef.PublicKey = Some ecmaPublicKey) then
|
||||
depModuleTable.[ilAssemRef.Name] <- dummyEntry ilAssemRef.Name
|
||||
else
|
||||
if not (depModuleTable.ContainsKey ilAssemRef.Name) then
|
||||
if not (depModuleTable.ContainsKey ilAssemRef.Name) then
|
||||
match tcImports.TryFindDllInfo(ctok, Range.rangeStartup, ilAssemRef.Name, lookupOnly=false) with
|
||||
| Some dllInfo ->
|
||||
let ccu =
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
<OutputType>Library</OutputType>
|
||||
<TargetFrameworks>netcoreapp3.1;net472</TargetFrameworks>
|
||||
<FSharpCoreImplicitPackageVersion>$(FSharpCoreShippedPackageVersion)</FSharpCoreImplicitPackageVersion>
|
||||
<TargetFrameworks>netcoreapp3.1;net472</TargetFrameworks>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -7,7 +7,6 @@ open FSharp.Test.Utilities.Compiler
|
|||
|
||||
module ``Confusing Type Name`` =
|
||||
|
||||
[<Fact>]
|
||||
let ``Expected types with multiple references`` () =
|
||||
|
||||
let csLibA =
|
||||
|
@ -55,5 +54,4 @@ printfn "%A" (b = otherB)
|
|||
(Warning 686, Line 9, Col 14, Line 9, Col 36, "The method or function 'makeOtherB' should not be given explicit type argument(s) because it does not declare its type parameters explicitly")
|
||||
(Error 1, Line 6, Col 19, Line 6, Col 25, "This expression was expected to have type\n 'A (libA, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null)' \nbut here has type\n 'A (libB, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null)' ")
|
||||
(Error 1, Line 11, Col 19, Line 11, Col 25, "This expression was expected to have type\n 'B<Microsoft.FSharp.Core.int> (libA, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null)' \nbut here has type\n 'B<Microsoft.FSharp.Core.int> (libB, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null)' ")
|
||||
|
||||
]
|
||||
|
|
|
@ -1,14 +1,9 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copyright (c) Microsoft Corporation. All Rights Reserved. See License.txt in the project root for license information. -->
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>net472;netcoreapp3.1</TargetFrameworks>
|
||||
<RuntimeIdentifiers>win-x86;win-x64;linux-x64;osx-x64</RuntimeIdentifiers>
|
||||
<TargetFrameworks Condition="'$(OS)' == 'Unix'">netcoreapp3.1</TargetFrameworks>
|
||||
<RuntimeIdentifiers Condition="'$(OS)' == 'Unix'">linux-x64;osx-x64</RuntimeIdentifiers>
|
||||
<AssetTargetFallback>$(AssetTargetFallback);portable-net45+win8+wp8+wpa81</AssetTargetFallback>
|
||||
<ReferenceVsAssemblies>true</ReferenceVsAssemblies>
|
||||
<OutputType>Library</OutputType>
|
||||
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
|
||||
<Optimize>false</Optimize>
|
||||
|
@ -42,6 +37,7 @@
|
|||
<Compile Include="ConstraintSolver\PrimitiveConstraints.fs" />
|
||||
<Compile Include="ConstraintSolver\MemberConstraints.fs" />
|
||||
<Compile Include="Interop\SimpleInteropTests.fs" />
|
||||
<Compile Include="Interop\VisibilityTests.fs" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
@ -49,17 +45,4 @@
|
|||
<ProjectReference Include="$(FSharpSourcesRoot)\fsharp\FSharp.Core\FSharp.Core.fsproj" />
|
||||
<ProjectReference Include="$(FSharpTestsRoot)\FSharp.Test.Utilities\FSharp.Test.Utilities.fsproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Net.Compilers" Version="$(MicrosoftNetCompilersVersion)" />
|
||||
<PackageReference Include="Microsoft.NETCore.ILDAsm" Version="$(MicrosoftNETCoreILDAsmVersion)" />
|
||||
<PackageReference Include="Microsoft.NETCore.ILAsm" Version="$(MicrosoftNETCoreILAsmVersion)" />
|
||||
<PackageReference Include="System.Collections.Immutable" Version="$(SystemCollectionsImmutableVersion)" />
|
||||
<PackageReference Include="System.Memory" Version="$(SystemMemoryVersion)" />
|
||||
<PackageReference Include="System.Reflection.Metadata" Version="$(SystemReflectionMetadataVersion)" />
|
||||
<PackageReference Include="System.Runtime.Loader" Version="$(SystemRuntimeLoaderVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="$(MicrosoftCodeAnalysisWorkspacesCommonVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="$(MicrosoftCodeAnalysisCSharpVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Test.Resources.Proprietary" Version="$(MicrosoftCodeAnalysisTestResourcesProprietaryVersion)" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
|
|
@ -31,8 +31,7 @@ let a = AMaker.makeA()
|
|||
|> compile
|
||||
|> shouldSucceed
|
||||
|
||||
|
||||
[<Fact(Skip="TODO: This is broken RN, since netcoreapp30 is used for C# and 3.1 for F#, should be fixed as part of https://github.com/dotnet/fsharp/issues/9740")>]
|
||||
[<Fact>]
|
||||
let ``Instantiate F# type from C#`` () =
|
||||
let FSLib =
|
||||
FSharp """
|
||||
|
|
|
@ -1,16 +1,9 @@
|
|||
// Copyright (c) Microsoft Corporation. All Rights Reserved. See License.txt in the project root for license information.
|
||||
namespace FSharp.Compiler.ComponentTests.Interop
|
||||
|
||||
namespace FSharp.Compiler.UnitTests
|
||||
open Xunit
|
||||
open FSharp.Test.Utilities.Compiler
|
||||
|
||||
open FSharp.Compiler.SourceCodeServices
|
||||
open FSharp.Reflection
|
||||
open FSharp.Test
|
||||
open FSharp.Test.Utilities
|
||||
open FSharp.Test.Utilities.Utilities
|
||||
open NUnit.Framework
|
||||
|
||||
[<TestFixture>]
|
||||
module ILMemberAccessTests =
|
||||
module ``Verify visibility of properties`` =
|
||||
|
||||
let csharpBaseClass = """
|
||||
namespace ExhaustiveCombinations
|
||||
|
@ -29,8 +22,7 @@ namespace ExhaustiveCombinations
|
|||
public string SetPublicGetProtectedInternal { protected internal get; set; }
|
||||
public string SetPublicGetPrivate { private get; set; }
|
||||
}
|
||||
}
|
||||
"""
|
||||
}"""
|
||||
|
||||
let fsharpBaseClass = """
|
||||
namespace ExhaustiveCombinations
|
||||
|
@ -38,17 +30,15 @@ namespace ExhaustiveCombinations
|
|||
open System
|
||||
|
||||
type FSharpBaseClass () =
|
||||
|
||||
member this.GetPublicSetInternal with public get() = "" and internal set (parameter:string) = ignore parameter
|
||||
member this.GetPublicSetPrivate with public get() = "" and private set (parameter:string) = ignore parameter
|
||||
member this.SetPublicGetInternal with internal get() = "" and public set (parameter:string) = ignore parameter
|
||||
member this.SetPublicGetPrivate with private get() = "" and public set (parameter:string) = ignore parameter
|
||||
member this.SetPublicGetPrivate with private get() = "" and public set (parameter:string) = ignore parameter"""
|
||||
|
||||
"""
|
||||
[<Fact>]
|
||||
let ``C# class F# derived class - access public`` () =
|
||||
|
||||
|
||||
[<Test>]
|
||||
let ``VerifyVisibility of Properties C# class F# derived class -- AccessPublicStuff`` () =
|
||||
let csharpLib = CSharp csharpBaseClass |> withName "csLib"
|
||||
|
||||
let fsharpSource =
|
||||
fsharpBaseClass + """
|
||||
|
@ -76,25 +66,23 @@ type MyFSharpClass () =
|
|||
let _ = this.GetPublicSetPrivate // Accessible
|
||||
()
|
||||
"""
|
||||
Fsx fsharpSource
|
||||
|> withOptions ["--langversion:preview"]
|
||||
|> withReferences [csharpLib]
|
||||
|> compile
|
||||
|> shouldFail
|
||||
|> withDiagnostics [
|
||||
(Error 491, Line 19, Col 9, Line 19, Col 41,
|
||||
"The member or object constructor 'GetPublicSetInternal' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")
|
||||
(Error 491, Line 22, Col 9, Line 22, Col 49,
|
||||
"The member or object constructor 'GetPublicSetPrivateProtected' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")
|
||||
(Error 491, Line 31, Col 9, Line 31, Col 40,
|
||||
"The member or object constructor 'GetPublicSetPrivate' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")]
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpBaseClass, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
|> CompilationReference.Create
|
||||
[<Fact>]
|
||||
let ``C# class F# non-derived class - access public`` () =
|
||||
|
||||
let fsCmpl =
|
||||
Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:preview"|], cmplRefs = [csCmpl])
|
||||
|
||||
CompilerAssert.CompileWithErrors(fsCmpl, [|
|
||||
(FSharpErrorSeverity.Error, 491, (22, 9, 22, 41),
|
||||
"The member or object constructor 'GetPublicSetInternal' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.");
|
||||
(FSharpErrorSeverity.Error, 491, (25, 9, 25, 49),
|
||||
"The member or object constructor 'GetPublicSetPrivateProtected' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.");
|
||||
(FSharpErrorSeverity.Error, 491, (34, 9, 34, 40),
|
||||
"The member or object constructor 'GetPublicSetPrivate' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")|])
|
||||
|
||||
|
||||
[<Test>]
|
||||
let ``VerifyVisibility of Properties C# class F# non-derived class -- AccessPublicStuff`` () =
|
||||
let csharpLib = CSharp csharpBaseClass |> withName "csLib"
|
||||
|
||||
let fsharpSource =
|
||||
fsharpBaseClass + """
|
||||
|
@ -123,30 +111,29 @@ type MyFSharpClass () =
|
|||
()
|
||||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpBaseClass, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:preview"|], cmplRefs = [csCmpl])
|
||||
|
||||
CompilerAssert.CompileWithErrors(fsCmpl, [|
|
||||
(FSharpErrorSeverity.Error, 491, (22, 9, 22, 39),
|
||||
"The member or object constructor 'GetPublicSetInternal' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.");
|
||||
(FSharpErrorSeverity.Error, 491, (25, 9, 25, 47),
|
||||
"The member or object constructor 'GetPublicSetPrivateProtected' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.");
|
||||
(FSharpErrorSeverity.Error, 491, (28, 9, 28, 48),
|
||||
"The member or object constructor 'GetPublicSetProtectedInternal' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.");
|
||||
(FSharpErrorSeverity.Error, 491, (31, 9, 31, 40),
|
||||
"The member or object constructor 'GetPublicSetProtected' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.");
|
||||
(FSharpErrorSeverity.Error, 491, (32, 17, 32, 41),
|
||||
Fsx fsharpSource
|
||||
|> withOptions ["--langversion:preview"]
|
||||
|> withReferences [csharpLib]
|
||||
|> compile
|
||||
|> shouldFail
|
||||
|> withDiagnostics [
|
||||
(Error 491, Line 19, Col 9, Line 19, Col 39,
|
||||
"The member or object constructor 'GetPublicSetInternal' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")
|
||||
(Error 491, Line 22, Col 9, Line 22, Col 47,
|
||||
"The member or object constructor 'GetPublicSetPrivateProtected' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")
|
||||
(Error 491, Line 25, Col 9, Line 25, Col 48,
|
||||
"The member or object constructor 'GetPublicSetProtectedInternal' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")
|
||||
(Error 491, Line 28, Col 9, Line 28, Col 40,
|
||||
"The member or object constructor 'GetPublicSetProtected' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")
|
||||
(Error 491, Line 29, Col 17, Line 29, Col 41,
|
||||
"The member or object constructor 'SetPublicGetProtected' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.");
|
||||
(FSharpErrorSeverity.Error, 491, (34, 9, 34, 38),
|
||||
"The member or object constructor 'GetPublicSetPrivate' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")|])
|
||||
(Error 491, Line 31, Col 9, Line 31, Col 38,
|
||||
"The member or object constructor 'GetPublicSetPrivate' is not accessible. Private members may only be accessed from within the declaring type. Protected members may only be accessed from an extending type and cannot be accessed from inner lambda expressions.")]
|
||||
|
||||
[<Fact>]
|
||||
let ``F# base F# derived class - access public`` () =
|
||||
|
||||
[<Test>]
|
||||
let ``VerifyVisibility of Properties F# base F# derived class -- AccessPublicStuff`` () =
|
||||
let csharpLib = CSharp csharpBaseClass |> withName "csLib"
|
||||
|
||||
let fsharpSource =
|
||||
fsharpBaseClass + """
|
||||
|
@ -155,7 +142,6 @@ open ExhaustiveCombinations
|
|||
|
||||
type MyFSharpClass () =
|
||||
inherit FSharpBaseClass()
|
||||
|
||||
member this.AccessPublicStuff() =
|
||||
|
||||
this.GetPublicSetInternal <- "1" // Inaccessible
|
||||
|
@ -170,26 +156,20 @@ type MyFSharpClass () =
|
|||
this.SetPublicGetPrivate <- "1" // Accessible
|
||||
let _ = this.SetPublicGetPrivate // accessible
|
||||
|
||||
()
|
||||
"""
|
||||
()"""
|
||||
Fsx fsharpSource
|
||||
|> withOptions ["--langversion:preview"]
|
||||
|> withReferences [csharpLib]
|
||||
|> compile
|
||||
|> shouldFail
|
||||
|> withDiagnostics [
|
||||
(Error 810, Line 21, Col 9, Line 21, Col 33, "Property 'GetPublicSetPrivate' cannot be set")
|
||||
(Error 807, Line 28, Col 17, Line 28, Col 41, "Property 'SetPublicGetPrivate' is not readable")]
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpBaseClass, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
|> CompilationReference.Create
|
||||
[<Fact>]
|
||||
let ``F# class F# non-derived class - access public`` () =
|
||||
|
||||
let fsCmpl =
|
||||
Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:preview"|], cmplRefs = [csCmpl])
|
||||
|
||||
CompilerAssert.CompileWithErrors(fsCmpl, [|
|
||||
(FSharpErrorSeverity.Error, 810, (25, 9, 25, 33),
|
||||
"Property 'GetPublicSetPrivate' cannot be set");
|
||||
(FSharpErrorSeverity.Error, 807, (32, 17, 32, 41),
|
||||
"Property 'SetPublicGetPrivate' is not readable")
|
||||
|])
|
||||
|
||||
|
||||
[<Test>]
|
||||
let ``VerifyVisibility of Properties F# class F# non-derived class -- AccessPublicStuff`` () =
|
||||
let csharpLib = CSharp csharpBaseClass |> withName "csLib"
|
||||
|
||||
let fsharpSource =
|
||||
fsharpBaseClass + """
|
||||
|
@ -197,7 +177,6 @@ open System
|
|||
open ExhaustiveCombinations
|
||||
|
||||
type MyFSharpClass () =
|
||||
|
||||
member _.AccessPublicStuff() =
|
||||
let bc = new FSharpBaseClass()
|
||||
|
||||
|
@ -206,19 +185,11 @@ type MyFSharpClass () =
|
|||
|
||||
bc.GetPublicSetPrivate <- "1" // Inaccessible
|
||||
let _ = bc.GetPublicSetPrivate // Accessible
|
||||
()
|
||||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpBaseClass, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
Compilation.Create(fsharpSource, Fsx, Exe, options = [|"--langversion:preview"|], cmplRefs = [csCmpl])
|
||||
|
||||
CompilerAssert.CompileWithErrors(fsCmpl, [|
|
||||
(FSharpErrorSeverity.Error, 810, (25, 9, 25, 31),
|
||||
"Property 'GetPublicSetPrivate' cannot be set")|])
|
||||
|
||||
|
||||
()"""
|
||||
|
||||
Fsx fsharpSource
|
||||
|> withOptions ["--langversion:preview"]
|
||||
|> withReferences [csharpLib]
|
||||
|> compile
|
||||
|> shouldFail
|
||||
|> withSingleDiagnostic (Error 810, Line 21, Col 9, Line 21, Col 31, "Property 'GetPublicSetPrivate' cannot be set")
|
|
@ -85,9 +85,7 @@
|
|||
<Compile Include="FSharp.Core\Microsoft.FSharp.Quotations\FSharpQuotations.fs" />
|
||||
<Compile Include="TypeForwarding.fs" />
|
||||
<Compile Include="StructTuples.fs" />
|
||||
|
||||
<Compile Include="SurfaceArea.coreclr.fs" Condition="$(TargetFramework.StartsWith('netcoreapp'))" />
|
||||
<Compile Include="SurfaceArea.net40.fs" Condition="$(TargetFramework.StartsWith('net4'))" />
|
||||
<Compile Include="SurfaceArea.fs" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup />
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -105,7 +105,7 @@ module rec Compiler =
|
|||
| _ ->
|
||||
{ Source = Text source
|
||||
LangVersion = CSharpLanguageVersion.CSharp8
|
||||
TargetFramework = TargetFramework.NetCoreApp30
|
||||
TargetFramework = TargetFramework.NetCoreApp31
|
||||
Name = None
|
||||
References = [] }
|
||||
|
||||
|
@ -274,6 +274,7 @@ module rec Compiler =
|
|||
Directory.CreateDirectory(outputPath) |> ignore
|
||||
|
||||
let filename = compilation.AssemblyName
|
||||
|
||||
let output = Path.Combine(outputPath, Path.ChangeExtension(filename, ".dll"))
|
||||
|
||||
let cmplResult = compilation.Emit (output)
|
||||
|
|
|
@ -83,19 +83,33 @@ type CompilerAssert private () =
|
|||
|
||||
static let _ = config |> ignore
|
||||
|
||||
// Do a one time dotnet sdk build to compute the proper set of reference assemblies to pass to the compiler
|
||||
#if NETCOREAPP
|
||||
// Do a one time dotnet sdk build to compute the proper set of reference assemblies to pass to the compiler
|
||||
static let projectFile = """
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>Exe</OutputType>
|
||||
<TargetFramework>netcoreapp3.1</TargetFramework>
|
||||
<TargetFramework>$TARGETFRAMEWORK</TargetFramework>
|
||||
<UseFSharpPreview>true</UseFSharpPreview>
|
||||
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup><Compile Include="Program.fs" /></ItemGroup>
|
||||
<ItemGroup><Reference Include="$FSHARPCORELOCATION" /></ItemGroup>
|
||||
<ItemGroup Condition="'$(TARGETFRAMEWORK)'=='net472'">
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Runtime" />
|
||||
<Reference Include="System.Core.dll" />
|
||||
<Reference Include="System.Xml.Linq.dll" />
|
||||
<Reference Include="System.Data.DataSetExtensions.dll" />
|
||||
<Reference Include="Microsoft.CSharp.dll" />
|
||||
<Reference Include="System.Data.dll" />
|
||||
<Reference Include="System.Deployment.dll" />
|
||||
<Reference Include="System.Drawing.dll" />
|
||||
<Reference Include="System.Net.Http.dll" />
|
||||
<Reference Include="System.Windows.Forms.dll" />
|
||||
<Reference Include="System.Xml.dll" />
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="WriteFrameworkReferences" AfterTargets="AfterBuild">
|
||||
<WriteLinesToFile File="FrameworkReferences.txt" Lines="@(ReferencePath)" Overwrite="true" WriteOnlyWhenDifferent="true" />
|
||||
|
@ -114,14 +128,18 @@ let main argv = 0"""
|
|||
let mutable errors = ""
|
||||
let mutable cleanUp = true
|
||||
let projectDirectory = Path.Combine(Path.GetTempPath(), "CompilerAssert", Path.GetRandomFileName())
|
||||
let pathToFSharpCore = typeof<RequireQualifiedAccessAttribute>.Assembly.Location
|
||||
try
|
||||
try
|
||||
Directory.CreateDirectory(projectDirectory) |> ignore
|
||||
let projectFileName = Path.Combine(projectDirectory, "ProjectFile.fsproj")
|
||||
let programFsFileName = Path.Combine(projectDirectory, "Program.fs")
|
||||
let frameworkReferencesFileName = Path.Combine(projectDirectory, "FrameworkReferences.txt")
|
||||
|
||||
File.WriteAllText(projectFileName, projectFile)
|
||||
#if NETCOREAPP
|
||||
File.WriteAllText(projectFileName, projectFile.Replace("$TARGETFRAMEWORK", "netcoreapp3.1").Replace("$FSHARPCORELOCATION", pathToFSharpCore))
|
||||
#else
|
||||
File.WriteAllText(projectFileName, projectFile.Replace("$TARGETFRAMEWORK", "net472").Replace("$FSHARPCORELOCATION", pathToFSharpCore))
|
||||
#endif
|
||||
File.WriteAllText(programFsFileName, programFs)
|
||||
|
||||
let pInfo = ProcessStartInfo ()
|
||||
|
@ -133,13 +151,13 @@ let main argv = 0"""
|
|||
pInfo.UseShellExecute <- false
|
||||
|
||||
let p = Process.Start(pInfo)
|
||||
p.WaitForExit()
|
||||
let succeeded = p.WaitForExit(10000)
|
||||
|
||||
output <- p.StandardOutput.ReadToEnd ()
|
||||
errors <- p.StandardError.ReadToEnd ()
|
||||
if not (String.IsNullOrWhiteSpace errors) then Assert.Fail errors
|
||||
|
||||
if p.ExitCode <> 0 then Assert.Fail(sprintf "Program exited with exit code %d" p.ExitCode)
|
||||
if p.ExitCode <> 0 || not succeeded then Assert.Fail(sprintf "Program exited with exit code %d" p.ExitCode)
|
||||
|
||||
File.ReadLines(frameworkReferencesFileName) |> Seq.toArray
|
||||
with | e ->
|
||||
|
@ -150,7 +168,6 @@ let main argv = 0"""
|
|||
finally
|
||||
if cleanUp then
|
||||
try Directory.Delete(projectDirectory) with | _ -> ()
|
||||
#endif
|
||||
|
||||
#if FX_NO_APP_DOMAINS
|
||||
static let executeBuiltApp assembly deps =
|
||||
|
@ -186,12 +203,12 @@ let main argv = 0"""
|
|||
ProjectFileName = "Z:\\test.fsproj"
|
||||
ProjectId = None
|
||||
SourceFiles = [|"test.fs"|]
|
||||
#if NETCOREAPP
|
||||
OtherOptions =
|
||||
let assemblies = getNetCoreAppReferences |> Array.map (fun x -> sprintf "-r:%s" x)
|
||||
Array.append [|"--preferreduilang:en-US"; "--targetprofile:netcore"; "--noframework";"--warn:5"|] assemblies
|
||||
#if NETCOREAPP
|
||||
Array.append [|"--preferreduilang:en-US"; "--targetprofile:netcore"; "--noframework"; "--simpleresolution"; "--warn:5"|] assemblies
|
||||
#else
|
||||
OtherOptions = [|"--preferreduilang:en-US";"--warn:5"|]
|
||||
Array.append [|"--preferreduilang:en-US"; "--targetprofile:mscorlib"; "--noframework"; "--warn:5"|] assemblies
|
||||
#endif
|
||||
ReferencedProjects = [||]
|
||||
IsIncompleteTypeCheckEnvironment = false
|
||||
|
@ -210,7 +227,6 @@ let main argv = 0"""
|
|||
|> Array.append defaultProjectOptions.OtherOptions
|
||||
|> Array.append [| "fsc.exe"; inputFilePath; "-o:" + outputFilePath; (if isExe then "--target:exe" else "--target:library"); "--nowin32manifest" |]
|
||||
let errors, _ = checker.Compile args |> Async.RunSynchronously
|
||||
|
||||
errors, outputFilePath
|
||||
|
||||
static let compileAux isExe options source f : unit =
|
||||
|
@ -635,7 +651,7 @@ let main argv = 0"""
|
|||
#if NETCOREAPP
|
||||
let args = Array.append argv [|"--noninteractive"; "--targetprofile:netcore"|]
|
||||
#else
|
||||
let args = Array.append argv [|"--noninteractive"|]
|
||||
let args = Array.append argv [|"--noninteractive"; "--targetprofile:mscorlib"|]
|
||||
#endif
|
||||
let allArgs = Array.append args options
|
||||
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
<Compile Include="Compiler.fs" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup />
|
||||
|
||||
<ItemGroup>
|
||||
<!-- CompilerAssert dependencies.
|
||||
Make sure they are getting built with the Utilities. -->
|
||||
|
@ -35,17 +37,43 @@
|
|||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Net.Compilers.Toolset" Version="$(MicrosoftNetCompilersToolsetVersion)" />
|
||||
<PackageReference Include="Microsoft.NETCore.ILDAsm" Version="$(MicrosoftNETCoreILDAsmVersion)" />
|
||||
<PackageReference Include="Microsoft.NETCore.ILAsm" Version="$(MicrosoftNETCoreILAsmVersion)" />
|
||||
<PackageReference Include="System.Collections.Immutable" Version="$(SystemCollectionsImmutableVersion)" />
|
||||
<PackageReference Include="System.Memory" Version="$(SystemMemoryVersion)" />
|
||||
<PackageReference Include="System.Reflection.Metadata" Version="$(SystemReflectionMetadataVersion)" />
|
||||
<PackageReference Include="System.Runtime.Loader" Version="$(SystemRuntimeLoaderVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="$(MicrosoftCodeAnalysisWorkspacesCommonVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="$(MicrosoftCodeAnalysisCSharpVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Test.Resources.Proprietary" Version="$(MicrosoftCodeAnalysisTestResourcesProprietaryVersion)" />
|
||||
<PackageReference Include="NUnit" Version="$(NUnitVersion)" /> <!-- TODO: This should be removed once all NUnit frameworks are migrated to xUnit -->
|
||||
<PackageReference Include="FluentAssertions" Version="$(FluentAssertionsVersion)" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Net.Compilers" Version="$(MicrosoftNetCompilersVersion)" />
|
||||
<PackageReference Include="Microsoft.NETCore.ILDAsm" Version="$(MicrosoftNETCoreILDAsmVersion)" />
|
||||
<PackageReference Include="Microsoft.NETCore.ILAsm" Version="$(MicrosoftNETCoreILAsmVersion)" />
|
||||
<PackageReference Include="System.Collections.Immutable" Version="$(SystemCollectionsImmutableVersion)" />
|
||||
<PackageReference Include="System.Memory" Version="$(SystemMemoryVersion)" />
|
||||
<PackageReference Include="System.Reflection.Metadata" Version="$(SystemReflectionMetadataVersion)" />
|
||||
<PackageReference Include="System.Runtime.Loader" Version="$(SystemRuntimeLoaderVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="$(MicrosoftCodeAnalysisWorkspacesCommonVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="$(MicrosoftCodeAnalysisCSharpVersion)" />
|
||||
<PackageReference Include="Microsoft.CodeAnalysis.Test.Resources.Proprietary" Version="$(MicrosoftCodeAnalysisTestResourcesProprietaryVersion)" />
|
||||
<PackageReference Include="Microsoft.NETCore.App.Ref" Version="3.1.0" IncludeAssets="none" PrivateAssets="all" GeneratePathProperty="true" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="$(PkgMicrosoft_NETCore_App_Ref)\ref\netcoreapp3.1\mscorlib.dll" LogicalName="netcoreapp31.mscorlib.dll">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="$(PkgMicrosoft_NETCore_App_Ref)\ref\netcoreapp3.1\System.dll" LogicalName="netcoreapp31.System.dll">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="$(PkgMicrosoft_NETCore_App_Ref)\ref\netcoreapp3.1\System.Core.dll" LogicalName="netcoreapp31.System.Core.dll">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="$(PkgMicrosoft_NETCore_App_Ref)\ref\netcoreapp3.1\System.Console.dll" LogicalName="netcoreapp31.System.Console.dll">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="$(PkgMicrosoft_NETCore_App_Ref)\ref\netcoreapp3.1\System.Runtime.dll" LogicalName="netcoreapp31.System.Runtime.dll">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="$(PkgMicrosoft_NETCore_App_Ref)\ref\netcoreapp3.1\System.Dynamic.Runtime.dll" LogicalName="netcoreapp31.System.Runtime.dll">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="$(PkgMicrosoft_NETCore_App_Ref)\ref\netcoreapp3.1\netstandard.dll" LogicalName="netcoreapp31.netstandard.dll">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
|
|
@ -94,10 +94,10 @@ module Commands =
|
|||
#endif
|
||||
|
||||
let csc exec cscExe flags srcFiles =
|
||||
exec cscExe (sprintf "%s %s" flags (srcFiles |> Seq.ofList |> String.concat " "))
|
||||
exec cscExe (sprintf "%s %s /reference:netstandard.dll" flags (srcFiles |> Seq.ofList |> String.concat " "))
|
||||
|
||||
let vbc exec vbcExe flags srcFiles =
|
||||
exec vbcExe (sprintf "%s %s" flags (srcFiles |> Seq.ofList |> String.concat " "))
|
||||
exec vbcExe (sprintf "%s %s /reference:netstandard.dll" flags (srcFiles |> Seq.ofList |> String.concat " "))
|
||||
|
||||
let fsi exec fsiExe flags sources =
|
||||
exec fsiExe (sprintf "%s %s" flags (sources |> Seq.ofList |> String.concat " "))
|
||||
|
@ -202,7 +202,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"
|
||||
let peverifyArchitecture = "net472"
|
||||
|
|
|
@ -18,7 +18,28 @@ module Utilities =
|
|||
[<RequireQualifiedAccess>]
|
||||
type TargetFramework =
|
||||
| NetStandard20
|
||||
| NetCoreApp30
|
||||
| NetCoreApp31
|
||||
|
||||
let private getResourceStream name =
|
||||
let assembly = typeof<TargetFramework>.GetTypeInfo().Assembly
|
||||
|
||||
let stream = assembly.GetManifestResourceStream(name);
|
||||
|
||||
match stream with
|
||||
| null -> failwith (sprintf "Resource '%s' not found in %s." name assembly.FullName)
|
||||
| _ -> stream
|
||||
|
||||
let private getResourceBlob name =
|
||||
use stream = getResourceStream name
|
||||
let (bytes: byte[]) = Array.zeroCreate (int stream.Length)
|
||||
use memoryStream = new MemoryStream (bytes)
|
||||
stream.CopyTo(memoryStream)
|
||||
bytes
|
||||
|
||||
let private getOrCreateResource (resource: byref<byte[]>) (name: string) =
|
||||
match resource with
|
||||
| null -> getResourceBlob name
|
||||
| _ -> resource
|
||||
|
||||
module private TestReferences =
|
||||
[<RequireQualifiedAccess>]
|
||||
|
@ -29,15 +50,29 @@ module Utilities =
|
|||
let systemCoreRef = lazy AssemblyMetadata.CreateFromImage(TestResources.NetFX.netstandard20.System_Core).GetReference(display = "System.Core.dll (netstandard 2.0 ref)")
|
||||
let systemDynamicRuntimeRef = lazy AssemblyMetadata.CreateFromImage(TestResources.NetFX.netstandard20.System_Dynamic_Runtime).GetReference(display = "System.Dynamic.Runtime.dll (netstandard 2.0 ref)")
|
||||
|
||||
[<RequireQualifiedAccess>]
|
||||
module NetCoreApp30 =
|
||||
let netStandard = lazy AssemblyMetadata.CreateFromImage(TestResources.NetFX.netcoreapp30.netstandard).GetReference(display = "netstandard.dll (netcoreapp 3.0 ref)")
|
||||
let mscorlibRef = lazy AssemblyMetadata.CreateFromImage(TestResources.NetFX.netcoreapp30.mscorlib).GetReference(display = "mscorlib.dll (netcoreapp 3.0 ref)")
|
||||
let systemRuntimeRef = lazy AssemblyMetadata.CreateFromImage(TestResources.NetFX.netcoreapp30.System_Runtime).GetReference(display = "System.Runtime.dll (netcoreapp 3.0 ref)")
|
||||
let systemCoreRef = lazy AssemblyMetadata.CreateFromImage(TestResources.NetFX.netcoreapp30.System_Core).GetReference(display = "System.Core.dll (netcoreapp 3.0 ref)")
|
||||
let systemDynamicRuntimeRef = lazy AssemblyMetadata.CreateFromImage(TestResources.NetFX.netcoreapp30.System_Dynamic_Runtime).GetReference(display = "System.Dynamic.Runtime.dll (netcoreapp 3.0 ref)")
|
||||
let systemConsoleRef = lazy AssemblyMetadata.CreateFromImage(TestResources.NetFX.netcoreapp30.System_Console).GetReference(display = "System.Console.dll (netcoreapp 3.0 ref)")
|
||||
|
||||
module private NetCoreApp31Refs =
|
||||
let mutable (_mscorlib: byte[]) = Unchecked.defaultof<byte[]>
|
||||
let mutable (_netstandard: byte[]) = Unchecked.defaultof<byte[]>
|
||||
let mutable (_System_Console: byte[]) = Unchecked.defaultof<byte[]>
|
||||
let mutable (_System_Core: byte[]) = Unchecked.defaultof<byte[]>
|
||||
let mutable (_System_Dynamic_Runtime: byte[]) = Unchecked.defaultof<byte[]>
|
||||
let mutable (_System_Runtime: byte[]) = Unchecked.defaultof<byte[]>
|
||||
let mscorlib () = getOrCreateResource &_mscorlib "mscorlib.dll"
|
||||
let netstandard () = getOrCreateResource &_netstandard "netstandard.dll"
|
||||
let System_Core () = getOrCreateResource &_System_Core "System.Core.dll"
|
||||
let System_Console () = getOrCreateResource &_System_Console "System.Console.dll"
|
||||
let System_Runtime () = getOrCreateResource &_System_Runtime "System.Runtime.dll"
|
||||
let System_Dynamic_Runtime () = getOrCreateResource &_System_Dynamic_Runtime "System.Dynamic.Runtime.dll"
|
||||
|
||||
[<RequireQualifiedAccess>]
|
||||
module NetCoreApp31 =
|
||||
let netStandard = lazy AssemblyMetadata.CreateFromImage(NetCoreApp31Refs.netstandard ()).GetReference(display = "netstandard.dll (netcoreapp 3.1 ref)")
|
||||
let mscorlibRef = lazy AssemblyMetadata.CreateFromImage(NetCoreApp31Refs.mscorlib ()).GetReference(display = "mscorlib.dll (netcoreapp 3.1 ref)")
|
||||
let systemRuntimeRef = lazy AssemblyMetadata.CreateFromImage(NetCoreApp31Refs.System_Runtime ()).GetReference(display = "System.Runtime.dll (netcoreapp 3.1 ref)")
|
||||
let systemCoreRef = lazy AssemblyMetadata.CreateFromImage(NetCoreApp31Refs.System_Core ()).GetReference(display = "System.Core.dll (netcoreapp 3.1 ref)")
|
||||
let systemDynamicRuntimeRef = lazy AssemblyMetadata.CreateFromImage(NetCoreApp31Refs.System_Dynamic_Runtime ()).GetReference(display = "System.Dynamic.Runtime.dll (netcoreapp 3.1 ref)")
|
||||
let systemConsoleRef = lazy AssemblyMetadata.CreateFromImage(NetCoreApp31Refs.System_Console ()).GetReference(display = "System.Console.dll (netcoreapp 3.1 ref)")
|
||||
|
||||
[<RequireQualifiedAccess>]
|
||||
module internal TargetFrameworkUtil =
|
||||
|
@ -46,13 +81,13 @@ module Utilities =
|
|||
|
||||
let private netStandard20References =
|
||||
lazy ImmutableArray.Create(NetStandard20.netStandard.Value, NetStandard20.mscorlibRef.Value, NetStandard20.systemRuntimeRef.Value, NetStandard20.systemCoreRef.Value, NetStandard20.systemDynamicRuntimeRef.Value)
|
||||
let private netCoreApp30References =
|
||||
lazy ImmutableArray.Create(NetCoreApp30.netStandard.Value, NetCoreApp30.mscorlibRef.Value, NetCoreApp30.systemRuntimeRef.Value, NetCoreApp30.systemCoreRef.Value, NetCoreApp30.systemDynamicRuntimeRef.Value, NetCoreApp30.systemConsoleRef.Value)
|
||||
let private netCoreApp31References =
|
||||
lazy ImmutableArray.Create(NetCoreApp31.netStandard.Value, NetCoreApp31.mscorlibRef.Value, NetCoreApp31.systemRuntimeRef.Value, NetCoreApp31.systemCoreRef.Value, NetCoreApp31.systemDynamicRuntimeRef.Value, NetCoreApp31.systemConsoleRef.Value)
|
||||
|
||||
let internal getReferences tf =
|
||||
match tf with
|
||||
| TargetFramework.NetStandard20 -> netStandard20References.Value
|
||||
| TargetFramework.NetCoreApp30 -> netCoreApp30References.Value
|
||||
| TargetFramework.NetCoreApp31 -> netCoreApp31References.Value
|
||||
|
||||
type RoslynLanguageVersion = LanguageVersion
|
||||
|
||||
|
|
|
@ -236,9 +236,7 @@ let _ = List.iter (fun s -> eprintf "%s" s) ["hello"; " "; "world"]
|
|||
let _ = eprintfn "%s" "."
|
||||
let _ = exit 0
|
||||
"""
|
||||
|
||||
let module1 = Compilation.Create(source, Fsx, Exe, [|"--standalone"|])
|
||||
|
||||
CompilerAssert.Execute(module1, newProcess=true)
|
||||
|
||||
[<Test>]
|
||||
|
|
|
@ -224,19 +224,19 @@ open Example
|
|||
type MyClass() =
|
||||
|
||||
interface IMessageReader with
|
||||
member this.TryParseMessage(input: inref<byte>): bool =
|
||||
member this.TryParseMessage(input: inref<byte>): bool =
|
||||
failwith "Not Implemented"
|
||||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(cs, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(cs, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
Compilation.Create(fs, Fsx, Library, cmplRefs = [csCmpl])
|
||||
|
||||
CompilerAssert.Compile fsCmpl
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
[<Test>]
|
||||
|
|
|
@ -129,7 +129,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -169,7 +169,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -217,7 +217,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -259,7 +259,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -308,7 +308,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -356,7 +356,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -406,7 +406,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -457,7 +457,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -494,7 +494,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -531,7 +531,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -572,7 +572,7 @@ let f1 () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -622,7 +622,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -677,7 +677,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -758,7 +758,7 @@ let main _ =
|
|||
|
||||
// Explicitly implementing a protected DIM is allowed in F# 4.6.
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -857,7 +857,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -933,7 +933,7 @@ type Test2 () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1071,7 +1071,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1121,7 +1121,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1171,7 +1171,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1221,7 +1221,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1295,7 +1295,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1358,7 +1358,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1433,7 +1433,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1513,7 +1513,7 @@ type Test2 () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1566,7 +1566,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1615,7 +1615,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1665,7 +1665,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1722,7 +1722,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1761,7 +1761,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1804,7 +1804,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1843,7 +1843,7 @@ let test = { new ITest }
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1898,7 +1898,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -1946,7 +1946,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2006,7 +2006,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2074,7 +2074,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2157,7 +2157,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2235,7 +2235,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2313,7 +2313,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2385,7 +2385,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2451,7 +2451,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2540,7 +2540,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2610,7 +2610,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2689,7 +2689,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2751,7 +2751,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2840,7 +2840,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -2965,7 +2965,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3076,7 +3076,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3188,7 +3188,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3304,7 +3304,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3410,7 +3410,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3513,7 +3513,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3612,7 +3612,7 @@ type Test2 () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3659,7 +3659,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3706,7 +3706,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3769,7 +3769,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3836,7 +3836,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3884,7 +3884,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -3939,7 +3939,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4004,7 +4004,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4094,7 +4094,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4172,7 +4172,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4269,7 +4269,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4364,7 +4364,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4451,7 +4451,7 @@ type Test () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4501,7 +4501,7 @@ let test =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4564,7 +4564,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4620,7 +4620,7 @@ let main _ =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4684,7 +4684,7 @@ f ()
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4744,7 +4744,7 @@ f3 ()
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4789,7 +4789,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4839,7 +4839,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4889,7 +4889,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -4942,7 +4942,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
@ -5038,7 +5038,7 @@ let f () =
|
|||
"""
|
||||
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(csharpSource, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
|
||||
let fsCmpl =
|
||||
|
|
|
@ -18,11 +18,11 @@ module InterfaceTests =
|
|||
CompilerAssert.Pass """
|
||||
type IGet<'T> =
|
||||
abstract member Get : unit -> 'T
|
||||
|
||||
|
||||
type GetTuple() =
|
||||
interface IGet<int * int> with
|
||||
member x.Get() = 1, 2
|
||||
|
||||
|
||||
type GetFunction() =
|
||||
interface IGet<unit->int> with
|
||||
member x.Get() = fun () -> 1
|
||||
|
@ -73,7 +73,7 @@ type AStructRecord = { Forename:string; Surname:string }
|
|||
|
||||
type AClass =
|
||||
val value: int
|
||||
|
||||
|
||||
new(value) = { value = value }
|
||||
|
||||
type IInterface<'a> =
|
||||
|
@ -170,7 +170,7 @@ assertion (fun (x:float) -> x * 3.0) (fun v ->
|
|||
|
||||
#if NETSTANDARD
|
||||
let csCmpl =
|
||||
CompilationUtil.CreateCSharpCompilation(``C# base with dim``, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp30)
|
||||
CompilationUtil.CreateCSharpCompilation(``C# base with dim``, CSharpLanguageVersion.CSharp8, TargetFramework.NetCoreApp31)
|
||||
|> CompilationReference.Create
|
||||
#endif
|
||||
|
||||
|
@ -178,7 +178,7 @@ assertion (fun (x:float) -> x * 3.0) (fun v ->
|
|||
Compilation.Create(
|
||||
``Many Instantiations of the same interface - SetUp`` +
|
||||
``Many Instantiations of the same interface - Asserts``,
|
||||
Fs, Library,
|
||||
Fs, Library,
|
||||
options = [|
|
||||
"--langversion:preview";
|
||||
#if !NETSTANDARD
|
||||
|
@ -210,7 +210,7 @@ assertion (fun (x:float) -> x * 3.0) (fun v ->
|
|||
let MultipleTypedInterfacesFSharp50VerifyIl() =
|
||||
CompilerAssert.CompileLibraryAndVerifyILWithOptions
|
||||
[|
|
||||
"--langversion:preview";
|
||||
"--langversion:preview";
|
||||
"--deterministic+";
|
||||
"--define:NO_ANONYMOUS";
|
||||
#if NETSTANDARD
|
||||
|
|
|
@ -36,7 +36,6 @@
|
|||
<Compile Include="Compiler\Conformance\BasicGrammarElements\CharConstants.fs" />
|
||||
<Compile Include="Compiler\Conformance\BasicGrammarElements\DecimalConstants.fs" />
|
||||
<Compile Include="Compiler\Conformance\BasicGrammarElements\IntegerConstants.fs" />
|
||||
<Compile Include="Compiler\Conformance\Properties\ILMemberAccessTests.fs" />
|
||||
<Compile Include="Compiler\Warnings\AssignmentWarningTests.fs" />
|
||||
<Compile Include="Compiler\Warnings\ExperimentalAttributeTests.fs" />
|
||||
<Compile Include="Compiler\Warnings\PatternMatchingWarningTests.fs" />
|
||||
|
@ -83,7 +82,6 @@
|
|||
<Compile Include="Compiler\Libraries\Core\Unchecked\DefaultOfTests.fs" />
|
||||
<None Include="app.config" />
|
||||
<None Include="update.base.line.with.actuals.fsx" />
|
||||
|
||||
<!-- don't include test resources in subdirectories -->
|
||||
<EmbeddedResource Remove="**" />
|
||||
</ItemGroup>
|
||||
|
|
|
@ -74,7 +74,7 @@ let diamondAssembly () =
|
|||
let globalNamespace () =
|
||||
let cfg = testConfig' "typeProviders/globalNamespace"
|
||||
|
||||
csc cfg """/out:globalNamespaceTP.dll /debug+ /target:library /r:"%s" """ cfg.FSCOREDLLPATH ["globalNamespaceTP.cs"]
|
||||
csc cfg """/out:globalNamespaceTP.dll /debug+ /target:library /r:netstandard.dll /r:"%s" """ cfg.FSCOREDLLPATH ["globalNamespaceTP.cs"]
|
||||
|
||||
fsc cfg "%s /debug+ /r:globalNamespaceTP.dll /optimize-" cfg.fsc_flags ["test.fsx"]
|
||||
|
||||
|
@ -162,7 +162,7 @@ let helloWorldCSharp () =
|
|||
|
||||
rm cfg "provider.dll"
|
||||
|
||||
csc cfg """/out:provider.dll /target:library "/r:%s" /r:magic.dll""" cfg.FSCOREDLLPATH ["provider.cs"]
|
||||
csc cfg """/out:provider.dll /target:library "/r:%s" /r:netstandard.dll /r:magic.dll""" cfg.FSCOREDLLPATH ["provider.cs"]
|
||||
|
||||
fsc cfg "%s /debug+ /r:provider.dll /optimize-" cfg.fsc_flags ["test.fsx"]
|
||||
|
||||
|
|
|
@ -105,12 +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"
|
||||
(Path.GetFullPath(__SOURCE_DIRECTORY__) + "/../../artifacts/bin/" + compiler + "/" + configuration + "/" + targetCore + "/FSharp.Core.dll")
|
||||
(Path.GetFullPath(__SOURCE_DIRECTORY__) + "/../../artifacts/bin/" + compiler + "/" + configuration + "/netstandard2.0/FSharp.Core.dll")
|
||||
|
||||
let computeSourceItems addDirectory addCondition (compileItem:CompileItem) sources =
|
||||
let computeInclude src =
|
||||
|
|
|
@ -689,7 +689,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 --define:LANGVERSION_PREVIEW --langversion:preview" cfg.fsc_flags ["test.fsx"]
|
||||
fsc cfg "%s --define:NO_LIB_REFERENCE -r:lib3.dll -r:lib2.dll -o:test.exe -g --define:LANGVERSION_PREVIEW --langversion:preview" cfg.fsc_flags ["test.fsx"]
|
||||
|
||||
peverify cfg "test.exe"
|
||||
|
||||
|
@ -758,8 +758,6 @@ module CoreTests =
|
|||
|
||||
testOkFile.CheckExists()
|
||||
|
||||
|
||||
|
||||
[<Test>]
|
||||
let ``genericmeasures-AS_DLL`` () = singleTestBuildAndRun' "core/genericmeasures" AS_DLL
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 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: {5F1F9A50-F150-FA46-A745-0383509A1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x002E0000
|
||||
// Image base: 0x06840000
|
||||
|
||||
|
||||
// =============== 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@
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 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: {5F1F9A50-2BCA-B308-A745-0383509A1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x02FB0000
|
||||
// Image base: 0x06970000
|
||||
|
||||
|
||||
// =============== 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<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::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
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 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: {5F1F9A50-4480-09E2-A745-0383509A1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x00D80000
|
||||
// Image base: 0x054F0000
|
||||
|
||||
|
||||
// =============== CLASS MEMBERS DECLARATION ===================
|
||||
|
@ -55,7 +60,7 @@
|
|||
IL_0000: ldstr "Hey!"
|
||||
IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::.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 [FSharp.Core]Microsoft.FSharp.Core.Unit>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 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: {5F1F9A50-084F-1A8E-A745-0383509A1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x012C0000
|
||||
// Image base: 0x04E70000
|
||||
|
||||
|
||||
// =============== CLASS MEMBERS DECLARATION ===================
|
||||
|
@ -55,7 +60,7 @@
|
|||
IL_0000: ldstr "Hey!"
|
||||
IL_0005: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::.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 [FSharp.Core]Microsoft.FSharp.Core.Unit>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 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: {5F1FA087-76D8-7EE3-A745-038387A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x02980000
|
||||
// Image base: 0x06BE0000
|
||||
|
||||
|
||||
// =============== 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@
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
.assembly extern FSharp.Core
|
||||
{
|
||||
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
|
||||
.ver 4:7:0:0
|
||||
.ver 5:0: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: 0x000005F6
|
||||
// Offset: 0x00000000 Length: 0x00000606
|
||||
}
|
||||
.mresource public FSharpOptimizationData.Linq101Aggregates01
|
||||
{
|
||||
// Offset: 0x00000600 Length: 0x00000211
|
||||
// Offset: 0x00000610 Length: 0x00000211
|
||||
}
|
||||
.module Linq101Aggregates01.exe
|
||||
// MVID: {5EAD3E37-D281-4783-A745-0383373EAD5E}
|
||||
// MVID: {5F1FA088-D281-4783-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x04D10000
|
||||
// Image base: 0x052A0000
|
||||
|
||||
|
||||
// =============== 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:\\dev\\fsharp\\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<!0> class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<class [Utils]Utils/Product,class [mscorlib]System.Collections.IEnumerable>::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<!0> class [mscorlib]System.Collections.Generic.IEnumerable`1<class [Utils]Utils/Product>::GetEnumerator()
|
||||
IL_002c: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1<!0> class [netstandard]System.Collections.Generic.IEnumerable`1<class [Utils]Utils/Product>::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<class [Utils]Utils/Product>::get_Current()
|
||||
IL_0045: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1<class [Utils]Utils/Product>::get_Current()
|
||||
IL_004a: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<class [Utils]Utils/Product,int32>::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
|
||||
|
@ -3505,8 +3510,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
|
||||
|
||||
|
@ -5749,8 +5754,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
|
||||
|
||||
|
@ -6864,13 +6869,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<!0> class [mscorlib]System.Collections.Generic.IEnumerable`1<class [Utils]Utils/Product>::GetEnumerator()
|
||||
IL_0043: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1<!0> class [netstandard]System.Collections.Generic.IEnumerable`1<class [Utils]Utils/Product>::GetEnumerator()
|
||||
IL_0048: stloc.s V_7
|
||||
.try
|
||||
{
|
||||
|
@ -6879,25 +6884,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<class [Utils]Utils/Product>::get_Current()
|
||||
IL_0068: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1<class [Utils]Utils/Product>::get_Current()
|
||||
IL_006d: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<class [Utils]Utils/Product,valuetype [mscorlib]System.Decimal>::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
|
||||
|
@ -6917,7 +6922,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 ''
|
||||
|
@ -6928,9 +6933,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
|
||||
|
||||
|
@ -6949,7 +6954,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
|
||||
|
@ -7519,21 +7524,21 @@
|
|||
IL_00c2: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1<!0> class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<int32,class [mscorlib]System.Collections.IEnumerable>::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<!0> class [mscorlib]System.Collections.Generic.IEnumerable`1<int32>::GetEnumerator()
|
||||
IL_00cb: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1<!0> class [netstandard]System.Collections.Generic.IEnumerable`1<int32>::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<int32>::get_Current()
|
||||
IL_00e4: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1<int32>::get_Current()
|
||||
IL_00e9: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<int32,int32>::Invoke(!0)
|
||||
IL_00ee: add.ovf
|
||||
IL_00ef: stloc.s V_28
|
||||
|
@ -7560,7 +7565,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
|
||||
|
@ -7606,21 +7611,21 @@
|
|||
IL_016f: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1<!0> class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<string,class [mscorlib]System.Collections.IEnumerable>::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<!0> class [mscorlib]System.Collections.Generic.IEnumerable`1<string>::GetEnumerator()
|
||||
IL_0178: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1<!0> class [netstandard]System.Collections.Generic.IEnumerable`1<string>::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<string>::get_Current()
|
||||
IL_0191: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1<string>::get_Current()
|
||||
IL_0196: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,int32>::Invoke(!0)
|
||||
IL_019b: add.ovf
|
||||
IL_019c: stloc.s V_37
|
||||
|
@ -7647,7 +7652,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
|
||||
|
@ -7937,13 +7942,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<!0> class [mscorlib]System.Collections.Generic.IEnumerable`1<float64>::GetEnumerator()
|
||||
IL_0526: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1<!0> class [netstandard]System.Collections.Generic.IEnumerable`1<float64>::GetEnumerator()
|
||||
IL_052b: stloc.s V_49
|
||||
.try
|
||||
{
|
||||
|
@ -7952,13 +7957,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<float64>::get_Current()
|
||||
IL_054a: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1<float64>::get_Current()
|
||||
IL_054f: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<float64,float64>::Invoke(!0)
|
||||
IL_0554: add
|
||||
IL_0555: stloc.s V_51
|
||||
|
@ -7980,7 +7985,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 ''
|
||||
|
@ -8011,7 +8016,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
|
||||
|
@ -8051,13 +8056,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<!0> class [mscorlib]System.Collections.Generic.IEnumerable`1<class [mscorlib]System.Tuple`2<string,float64>>::GetEnumerator()
|
||||
IL_05fe: callvirt instance class [netstandard]System.Collections.Generic.IEnumerator`1<!0> class [netstandard]System.Collections.Generic.IEnumerable`1<class [mscorlib]System.Tuple`2<string,float64>>::GetEnumerator()
|
||||
IL_0603: stloc.s V_61
|
||||
.try
|
||||
{
|
||||
|
@ -8066,13 +8071,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<class [mscorlib]System.Tuple`2<string,float64>>::get_Current()
|
||||
IL_0622: callvirt instance !0 class [netstandard]System.Collections.Generic.IEnumerator`1<class [mscorlib]System.Tuple`2<string,float64>>::get_Current()
|
||||
IL_0627: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<class [mscorlib]System.Tuple`2<string,float64>,float64>::Invoke(!0)
|
||||
IL_062c: add
|
||||
IL_062d: stloc.s V_63
|
||||
|
@ -8094,7 +8099,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 ''
|
||||
|
@ -8125,7 +8130,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
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 5:0: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: {5F1FA088-19D7-C20D-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x028F0000
|
||||
// Image base: 0x05260000
|
||||
|
||||
|
||||
// =============== 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<class [Utils]Utils/Product> '<StartupCode$Linq101ElementOperators01>'.$Linq101ElementOperators01::'products@8-2'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101ElementOperators01>'.$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<int32> '<StartupCode$Linq101ElementOperators01>'.$Linq101ElementOperators01::'numbers2@48-2'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101ElementOperators01>'.$Linq101ElementOperators01::numbers2@48
|
||||
IL_0005: ret
|
||||
} // end of method Linq101ElementOperators01::get_numbers2
|
||||
|
||||
|
@ -1588,7 +1593,7 @@
|
|||
.class private abstract auto ansi sealed '<StartupCode$Linq101ElementOperators01>'.$Linq101ElementOperators01
|
||||
extends [mscorlib]System.Object
|
||||
{
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> 'products@8-2'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> 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<int32> 'numbers2@48-2'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 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<class [Utils]Utils/Product> [Utils]Utils::getProductList()
|
||||
IL_0005: dup
|
||||
IL_0006: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101ElementOperators01>'.$Linq101ElementOperators01::'products@8-2'
|
||||
IL_0006: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101ElementOperators01>'.$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<!0> class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32>::Cons(!0,
|
||||
class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!0>)
|
||||
IL_0140: dup
|
||||
IL_0141: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101ElementOperators01>'.$Linq101ElementOperators01::'numbers2@48-2'
|
||||
IL_0141: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101ElementOperators01>'.$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
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 5:0: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: {5F1FA088-FB79-E5BF-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x025F0000
|
||||
// Image base: 0x06480000
|
||||
|
||||
|
||||
// =============== 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<int32> '<StartupCode$Linq101Grouping01>'.$Linq101Grouping01::'numbers@10-3'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Grouping01>'.$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<string> '<StartupCode$Linq101Grouping01>'.$Linq101Grouping01::'words@20-2'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string> '<StartupCode$Linq101Grouping01>'.$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<class [Utils]Utils/Product> '<StartupCode$Linq101Grouping01>'.$Linq101Grouping01::'products@30-4'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101Grouping01>'.$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<string> 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<int32> 'numbers@10-3'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 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<int32,int32[]>[] 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<string> 'words@20-2'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string> 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<char,string[]>[] 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<class [Utils]Utils/Product> 'products@30-4'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> 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<string,class [Utils]Utils/Product[]>[] 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<!0> class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32>::Cons(!0,
|
||||
class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!0>)
|
||||
IL_00b2: dup
|
||||
IL_00b3: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Grouping01>'.$Linq101Grouping01::'numbers@10-3'
|
||||
IL_00b3: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Grouping01>'.$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<!0> class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string>::Cons(!0,
|
||||
class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!0>)
|
||||
IL_0157: dup
|
||||
IL_0158: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string> '<StartupCode$Linq101Grouping01>'.$Linq101Grouping01::'words@20-2'
|
||||
IL_0158: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string> '<StartupCode$Linq101Grouping01>'.$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<class [Utils]Utils/Product> [Utils]Utils::getProductList()
|
||||
IL_01c1: dup
|
||||
IL_01c2: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101Grouping01>'.$Linq101Grouping01::'products@30-4'
|
||||
IL_01c2: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101Grouping01>'.$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()
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 5:0: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: {5F1FA088-B280-A6A2-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x00AF0000
|
||||
// Image base: 0x04B00000
|
||||
|
||||
|
||||
// =============== 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<int32> '<StartupCode$Linq101Partitioning01>'.$Linq101Partitioning01::'numbers@7-5'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Partitioning01>'.$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<class [Utils]Utils/Customer> '<StartupCode$Linq101Partitioning01>'.$Linq101Partitioning01::'customers@17-2'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101Partitioning01>'.$Linq101Partitioning01::customers@17
|
||||
IL_0005: ret
|
||||
} // end of method Linq101Partitioning01::get_customers
|
||||
|
||||
|
@ -1937,11 +1942,11 @@
|
|||
.class private abstract auto ansi sealed '<StartupCode$Linq101Partitioning01>'.$Linq101Partitioning01
|
||||
extends [mscorlib]System.Object
|
||||
{
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 'numbers@7-5'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 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<int32> 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<class [Utils]Utils/Customer> 'customers@17-2'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> 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<string,int32,valuetype [mscorlib]System.DateTime>[] 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<!0> class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32>::Cons(!0,
|
||||
class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!0>)
|
||||
IL_0042: dup
|
||||
IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Partitioning01>'.$Linq101Partitioning01::'numbers@7-5'
|
||||
IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Partitioning01>'.$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<class [Utils]Utils/Customer> [Utils]Utils::getCustomerList()
|
||||
IL_007b: dup
|
||||
IL_007c: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101Partitioning01>'.$Linq101Partitioning01::'customers@17-2'
|
||||
IL_007c: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101Partitioning01>'.$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()
|
||||
|
|
|
@ -13,12 +13,17 @@
|
|||
.assembly extern FSharp.Core
|
||||
{
|
||||
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
|
||||
.ver 4:7:0:0
|
||||
.ver 5:0: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,
|
||||
|
@ -40,13 +45,13 @@
|
|||
// Offset: 0x00000660 Length: 0x00000204
|
||||
}
|
||||
.module Linq101Select01.exe
|
||||
// MVID: {5ECD8279-6057-8F80-A745-03837982CD5E}
|
||||
// MVID: {5F1FA088-6057-8F80-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x058D0000
|
||||
// Image base: 0x05950000
|
||||
|
||||
|
||||
// =============== CLASS MEMBERS DECLARATION ===================
|
||||
|
@ -2675,13 +2680,13 @@
|
|||
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-2'::Invoke
|
||||
|
||||
|
@ -2878,8 +2883,8 @@
|
|||
IL_0021: stloc.3
|
||||
IL_0022: ldloc.2
|
||||
IL_0023: ldloc.3
|
||||
IL_0024: call int32 [mscorlib]System.DateTime::Compare(valuetype [mscorlib]System.DateTime,
|
||||
valuetype [mscorlib]System.DateTime)
|
||||
IL_0024: call int32 [netstandard]System.DateTime::Compare(valuetype [netstandard]System.DateTime,
|
||||
valuetype [netstandard]System.DateTime)
|
||||
IL_0029: ldc.i4.0
|
||||
IL_002a: clt
|
||||
IL_002c: ldc.i4.0
|
||||
|
@ -3073,13 +3078,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
|
||||
|
||||
|
@ -3195,8 +3200,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
|
||||
|
||||
|
@ -3343,8 +3348,8 @@
|
|||
IL_001a: stloc.3
|
||||
IL_001b: ldloc.2
|
||||
IL_001c: ldloc.3
|
||||
IL_001d: call int32 [mscorlib]System.DateTime::Compare(valuetype [mscorlib]System.DateTime,
|
||||
valuetype [mscorlib]System.DateTime)
|
||||
IL_001d: call int32 [netstandard]System.DateTime::Compare(valuetype [netstandard]System.DateTime,
|
||||
valuetype [netstandard]System.DateTime)
|
||||
IL_0022: ldc.i4.0
|
||||
IL_0023: clt
|
||||
IL_0025: ldc.i4.0
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 5:0: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: {5F1FA088-4EE5-349F-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x026A0000
|
||||
// Image base: 0x053D0000
|
||||
|
||||
|
||||
// =============== 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<int32>
|
||||
{
|
||||
.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<int32> Linq101SetOperators01/'uniqueFactors@13-1'::'enum'
|
||||
IL_0002: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> 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<int32>::.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<int32>& 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<int32> Linq101SetOperators01::get_factorsOf300()
|
||||
IL_0031: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1<!0> class [mscorlib]System.Collections.Generic.IEnumerable`1<int32>::GetEnumerator()
|
||||
IL_0036: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> Linq101SetOperators01/'uniqueFactors@13-1'::'enum'
|
||||
IL_0036: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> 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<int32> Linq101SetOperators01/'uniqueFactors@13-1'::'enum'
|
||||
IL_0043: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> 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<int32> Linq101SetOperators01/'uniqueFactors@13-1'::'enum'
|
||||
IL_0050: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> Linq101SetOperators01/uniqueFactors@13::'enum'
|
||||
IL_0055: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1<int32>::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<int32> Linq101SetOperators01/'uniqueFactors@13-1'::'enum'
|
||||
IL_0078: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> Linq101SetOperators01/uniqueFactors@13::'enum'
|
||||
IL_007d: call void [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives/IntrinsicFunctions::Dispose<class [mscorlib]System.Collections.Generic.IEnumerator`1<int32>>(!!0)
|
||||
IL_0082: nop
|
||||
IL_0083: ldarg.0
|
||||
IL_0084: ldnull
|
||||
IL_0085: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> Linq101SetOperators01/'uniqueFactors@13-1'::'enum'
|
||||
IL_0085: stfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> 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<int32> Linq101SetOperators01/'uniqueFactors@13-1'::'enum'
|
||||
IL_0055: ldfld class [mscorlib]System.Collections.Generic.IEnumerator`1<int32> Linq101SetOperators01/uniqueFactors@13::'enum'
|
||||
IL_005a: call void [FSharp.Core]Microsoft.FSharp.Core.LanguagePrimitives/IntrinsicFunctions::Dispose<class [mscorlib]System.Collections.Generic.IEnumerator`1<int32>>(!!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<int32>
|
||||
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,
|
||||
int32)
|
||||
IL_0003: newobj instance void Linq101SetOperators01/uniqueFactors@13::.ctor(class [mscorlib]System.Collections.Generic.IEnumerator`1<int32>,
|
||||
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<class [Utils]Utils/Product,class [mscorlib]System.Collections.Generic.IEnumerable`1<class [Utils]Utils/Product>>
|
||||
|
@ -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<int32> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::'factorsOf300@9-2'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101SetOperators01>'.$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<int32> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::'uniqueFactors@11-2'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101SetOperators01>'.$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<class [Utils]Utils/Product> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::'products@18-14'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101SetOperators01>'.$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<class [Utils]Utils/Customer> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::'customers@28-6'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::customers@28
|
||||
IL_0005: ret
|
||||
} // end of method Linq101SetOperators01::get_customers
|
||||
|
||||
|
@ -1589,15 +1594,15 @@
|
|||
.class private abstract auto ansi sealed '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01
|
||||
extends [mscorlib]System.Object
|
||||
{
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 'factorsOf300@9-2'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 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<int32> 'uniqueFactors@11-2'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 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<class [Utils]Utils/Product> 'products@18-14'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> 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<string> 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<class [Utils]Utils/Customer> 'customers@28-6'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> 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<char> 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<!0> class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32>::Cons(!0,
|
||||
class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!0>)
|
||||
IL_0023: dup
|
||||
IL_0024: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::'factorsOf300@9-2'
|
||||
IL_0024: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101SetOperators01>'.$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,
|
||||
int32)
|
||||
IL_0036: newobj instance void Linq101SetOperators01/uniqueFactors@13::.ctor(class [mscorlib]System.Collections.Generic.IEnumerator`1<int32>,
|
||||
int32,
|
||||
int32)
|
||||
IL_003b: newobj instance void class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<int32,class [mscorlib]System.Collections.IEnumerable>::.ctor(class [mscorlib]System.Collections.Generic.IEnumerable`1<!0>)
|
||||
IL_0040: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<!!0,!!1> [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Distinct<int32,class [mscorlib]System.Collections.IEnumerable>(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<!!0,!!1>)
|
||||
IL_0045: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1<!0> class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<int32,class [mscorlib]System.Collections.IEnumerable>::get_Source()
|
||||
IL_004a: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!!0> [FSharp.Core]Microsoft.FSharp.Collections.SeqModule::ToList<int32>(class [mscorlib]System.Collections.Generic.IEnumerable`1<!!0>)
|
||||
IL_004f: dup
|
||||
IL_0050: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::'uniqueFactors@11-2'
|
||||
IL_0050: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::uniqueFactors@11
|
||||
IL_0055: stloc.1
|
||||
.line 18,18 : 1,32 ''
|
||||
IL_0056: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> [Utils]Utils::getProductList()
|
||||
IL_005b: dup
|
||||
IL_005c: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::'products@18-14'
|
||||
IL_005c: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101SetOperators01>'.$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<class [Utils]Utils/Customer> [Utils]Utils::getCustomerList()
|
||||
IL_0093: dup
|
||||
IL_0094: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101SetOperators01>'.$Linq101SetOperators01::'customers@28-6'
|
||||
IL_0094: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101SetOperators01>'.$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
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 5:0: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: {5F1FA088-FF23-CD21-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x009E0000
|
||||
// Image base: 0x04BD0000
|
||||
|
||||
|
||||
// =============== 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<int32,class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<int32,object>>
|
||||
{
|
||||
.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<int32,class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<int32,object>>::.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<int32,object>
|
||||
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<!!0,!!1> [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Yield<int32,object>(!!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<int32,bool>
|
||||
{
|
||||
.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<int32,bool>::.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<int32,int32>
|
||||
{
|
||||
.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<int32,int32>::.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<class [Utils]Utils/Product,class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<class [Utils]Utils/Product,object>>
|
||||
|
@ -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<int32> '<StartupCode$Linq101Where01>'.$Linq101Where01::'numbers@9-11'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Where01>'.$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<int32> '<StartupCode$Linq101Where01>'.$Linq101Where01::'lowNums@12-2'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Where01>'.$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<class [Utils]Utils/Product> '<StartupCode$Linq101Where01>'.$Linq101Where01::'products@20-16'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101Where01>'.$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<class [Utils]Utils/Customer> '<StartupCode$Linq101Where01>'.$Linq101Where01::'customers@38-8'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101Where01>'.$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<string> '<StartupCode$Linq101Where01>'.$Linq101Where01::'digits@48-6'
|
||||
IL_0000: ldsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string> '<StartupCode$Linq101Where01>'.$Linq101Where01::digits@48
|
||||
IL_0005: ret
|
||||
} // end of method Linq101Where01::get_digits
|
||||
|
||||
|
@ -1050,21 +1055,21 @@
|
|||
.class private abstract auto ansi sealed '<StartupCode$Linq101Where01>'.$Linq101Where01
|
||||
extends [mscorlib]System.Object
|
||||
{
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 'numbers@9-11'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 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<int32> 'lowNums@12-2'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> 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<class [Utils]Utils/Product> 'products@20-16'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> 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<class [Utils]Utils/Product> 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<class [Utils]Utils/Product> 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<class [Utils]Utils/Customer> 'customers@38-8'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> 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<string> 'digits@48-6'
|
||||
.field static assembly class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string> 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<string> 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<!0> class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32>::Cons(!0,
|
||||
class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!0>)
|
||||
IL_0042: dup
|
||||
IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Where01>'.$Linq101Where01::'numbers@9-11'
|
||||
IL_0043: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Where01>'.$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<int32> Linq101Where01::get_numbers()
|
||||
IL_005d: callvirt instance class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<!!0,class [mscorlib]System.Collections.IEnumerable> [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Source<int32>(class [mscorlib]System.Collections.Generic.IEnumerable`1<!!0>)
|
||||
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<!!2,!!1> [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::For<int32,class [mscorlib]System.Collections.IEnumerable,int32,object>(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<!!0,!!1>,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<!!0,class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<!!2,!!3>>)
|
||||
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<!!0,!!1> [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Where<int32,class [mscorlib]System.Collections.IEnumerable>(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<!!0,!!1>,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<!!0,bool>)
|
||||
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<!!2,!!1> [FSharp.Core]Microsoft.FSharp.Linq.QueryBuilder::Select<int32,class [mscorlib]System.Collections.IEnumerable,int32>(class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<!!0,!!1>,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<!!0,!!2>)
|
||||
IL_0082: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerable`1<!0> class [FSharp.Core]Microsoft.FSharp.Linq.QuerySource`2<int32,class [mscorlib]System.Collections.IEnumerable>::get_Source()
|
||||
IL_0087: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!!0> [FSharp.Core]Microsoft.FSharp.Collections.ListModule::OfSeq<int32>(class [mscorlib]System.Collections.Generic.IEnumerable`1<!!0>)
|
||||
IL_008c: dup
|
||||
IL_008d: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Where01>'.$Linq101Where01::'lowNums@12-2'
|
||||
IL_008d: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<int32> '<StartupCode$Linq101Where01>'.$Linq101Where01::lowNums@12
|
||||
IL_0092: stloc.1
|
||||
.line 20,20 : 1,32 ''
|
||||
IL_0093: call class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> [Utils]Utils::getProductList()
|
||||
IL_0098: dup
|
||||
IL_0099: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101Where01>'.$Linq101Where01::'products@20-16'
|
||||
IL_0099: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Product> '<StartupCode$Linq101Where01>'.$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<class [Utils]Utils/Customer> [Utils]Utils::getCustomerList()
|
||||
IL_012f: dup
|
||||
IL_0130: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101Where01>'.$Linq101Where01::'customers@38-8'
|
||||
IL_0130: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<class [Utils]Utils/Customer> '<StartupCode$Linq101Where01>'.$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<!0> class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string>::Cons(!0,
|
||||
class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<!0>)
|
||||
IL_01eb: dup
|
||||
IL_01ec: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string> '<StartupCode$Linq101Where01>'.$Linq101Where01::'digits@48-6'
|
||||
IL_01ec: stsfld class [FSharp.Core]Microsoft.FSharp.Collections.FSharpList`1<string> '<StartupCode$Linq101Where01>'.$Linq101Where01::digits@48
|
||||
IL_01f1: stloc.s digits
|
||||
.line 49,55 : 1,21 ''
|
||||
IL_01f3: newobj instance void Linq101Where01/shortDigits@55::.ctor()
|
||||
|
|
|
@ -13,7 +13,12 @@
|
|||
.assembly extern FSharp.Core
|
||||
{
|
||||
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
|
||||
.ver 4:7:0: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 StaticInit_Struct01
|
||||
{
|
||||
|
@ -36,13 +41,13 @@
|
|||
// Offset: 0x000007A8 Length: 0x0000021F
|
||||
}
|
||||
.module StaticInit_Struct01.dll
|
||||
// MVID: {5ECD86B3-05F6-D6CB-A745-0383B386CD5E}
|
||||
// MVID: {5F1FA087-05F6-D6CB-A745-038387A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x06E50000
|
||||
// Image base: 0x053B0000
|
||||
|
||||
|
||||
// =============== CLASS MEMBERS DECLARATION ===================
|
||||
|
@ -81,8 +86,8 @@
|
|||
IL_000a: ldfld valuetype [mscorlib]System.DateTime StaticInit_Struct01/C::s
|
||||
IL_000f: ldloc.0
|
||||
IL_0010: ldfld valuetype [mscorlib]System.DateTime StaticInit_Struct01/C::s
|
||||
IL_0015: call int32 [mscorlib]System.DateTime::Compare(valuetype [mscorlib]System.DateTime,
|
||||
valuetype [mscorlib]System.DateTime)
|
||||
IL_0015: call int32 [netstandard]System.DateTime::Compare(valuetype [netstandard]System.DateTime,
|
||||
valuetype [netstandard]System.DateTime)
|
||||
IL_001a: ret
|
||||
} // end of method C::CompareTo
|
||||
|
||||
|
@ -122,8 +127,8 @@
|
|||
IL_000d: ldfld valuetype [mscorlib]System.DateTime StaticInit_Struct01/C::s
|
||||
IL_0012: ldloc.1
|
||||
IL_0013: ldfld valuetype [mscorlib]System.DateTime StaticInit_Struct01/C::s
|
||||
IL_0018: call int32 [mscorlib]System.DateTime::Compare(valuetype [mscorlib]System.DateTime,
|
||||
valuetype [mscorlib]System.DateTime)
|
||||
IL_0018: call int32 [netstandard]System.DateTime::Compare(valuetype [netstandard]System.DateTime,
|
||||
valuetype [netstandard]System.DateTime)
|
||||
IL_001d: ret
|
||||
} // end of method C::CompareTo
|
||||
|
||||
|
@ -199,8 +204,8 @@
|
|||
IL_0017: ldfld valuetype [mscorlib]System.DateTime StaticInit_Struct01/C::s
|
||||
IL_001c: ldloc.1
|
||||
IL_001d: ldfld valuetype [mscorlib]System.DateTime StaticInit_Struct01/C::s
|
||||
IL_0022: call bool [mscorlib]System.DateTime::Equals(valuetype [mscorlib]System.DateTime,
|
||||
valuetype [mscorlib]System.DateTime)
|
||||
IL_0022: call bool [netstandard]System.DateTime::Equals(valuetype [netstandard]System.DateTime,
|
||||
valuetype [netstandard]System.DateTime)
|
||||
IL_0027: ret
|
||||
|
||||
.line 100001,100001 : 0,0 ''
|
||||
|
@ -266,8 +271,8 @@
|
|||
IL_0004: ldfld valuetype [mscorlib]System.DateTime StaticInit_Struct01/C::s
|
||||
IL_0009: ldloc.0
|
||||
IL_000a: ldfld valuetype [mscorlib]System.DateTime StaticInit_Struct01/C::s
|
||||
IL_000f: call bool [mscorlib]System.DateTime::Equals(valuetype [mscorlib]System.DateTime,
|
||||
valuetype [mscorlib]System.DateTime)
|
||||
IL_000f: call bool [netstandard]System.DateTime::Equals(valuetype [netstandard]System.DateTime,
|
||||
valuetype [netstandard]System.DateTime)
|
||||
IL_0014: ret
|
||||
} // end of method C::Equals
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 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: {5F1FA088-A662-4FAC-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x02B20000
|
||||
// Image base: 0x06AD0000
|
||||
|
||||
|
||||
// =============== 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<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::.ctor(string)
|
||||
IL_000a: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatLine<class [FSharp.Core]Microsoft.FSharp.Core.Unit>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
@ -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
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 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: {5F1FA088-C040-2523-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x012C0000
|
||||
// Image base: 0x067F0000
|
||||
|
||||
|
||||
// =============== 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
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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 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: {5F1FA088-DFDD-92DF-A745-038388A01F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x02760000
|
||||
// Image base: 0x07100000
|
||||
|
||||
|
||||
// =============== CLASS MEMBERS DECLARATION ===================
|
||||
|
@ -57,11 +62,11 @@
|
|||
.maxstack 4
|
||||
.locals init ([0] class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<!!a,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<!!a,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<!!0,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# Functional: the option does what it is meant to do
|
||||
SOURCE=noframework01.fs # noframework01.fs
|
||||
SOURCE=noframework01.fsx COMPILE_ONLY=1 FSIMODE=PIPE # noframework01.fsx
|
||||
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.fs COMPILE_ONLY=1 SCFLAGS="--noframework" # noframework02.fs
|
||||
SOURCE=noframework02.fsx COMPILE_ONLY=1 SCFLAGS="--noframework" FSIMODE=FEED # noframework02.fsx
|
||||
|
||||
|
|
|
@ -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
|
||||
NoMT SOURCE="GenericExtensions.fs" SCFLAGS="--reference:GenericExtensionsCSLib.dll" PRECMD="\$CSC_PIPE /r:\"%FSCOREDLLPATH%\" /t:library /reference:System.Core.dll /reference:netstandard.dll GenericExtensionsCSLib.cs" # GenericExtensions.fs
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-56DF-F74F-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x002D0000
|
||||
// Image base: 0x04F10000
|
||||
|
||||
|
||||
// =============== 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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<int32,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<int32,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
@ -424,7 +429,7 @@
|
|||
IL_003c: ldstr "%O"
|
||||
IL_0041: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5<class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<int32,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<int32,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
@ -493,7 +498,7 @@
|
|||
IL_0040: ldstr "%O"
|
||||
IL_0045: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5<class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<int32,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<int32,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-105C-852B-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x002D0000
|
||||
// Image base: 0x06CB0000
|
||||
|
||||
|
||||
// =============== 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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<char,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<char,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
@ -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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<char,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<char,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
@ -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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,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 [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-31A1-8DCB-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x013E0000
|
||||
// Image base: 0x07010000
|
||||
|
||||
|
||||
// =============== CLASS MEMBERS DECLARATION ===================
|
||||
|
@ -59,7 +64,7 @@
|
|||
[1] int32 i,
|
||||
[2] class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit> 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<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::.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 [FSharp.Core]Microsoft.FSharp.Core.Unit>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-5066-4012-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x00720000
|
||||
// Image base: 0x07280000
|
||||
|
||||
|
||||
// =============== CLASS MEMBERS DECLARATION ===================
|
||||
|
@ -59,7 +64,7 @@
|
|||
[1] int32 i,
|
||||
[2] class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit> 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<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::.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 [FSharp.Core]Microsoft.FSharp.Core.Unit>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-7903-6020-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x01970000
|
||||
// Image base: 0x070D0000
|
||||
|
||||
|
||||
// =============== CLASS MEMBERS DECLARATION ===================
|
||||
|
@ -61,7 +66,7 @@
|
|||
[1] int32 i,
|
||||
[2] class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit> 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<class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::.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 [FSharp.Core]Microsoft.FSharp.Core.Unit>(class [mscorlib]System.IO.TextWriter,
|
||||
class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-0562-F88E-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x002E0000
|
||||
// Image base: 0x06C20000
|
||||
|
||||
|
||||
// =============== 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 ''
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-053B-F88E-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x013E0000
|
||||
// Image base: 0x06750000
|
||||
|
||||
|
||||
// =============== 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
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-0759-B6D8-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x00F20000
|
||||
// Image base: 0x054B0000
|
||||
|
||||
|
||||
// =============== 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 '<StartupCode$Equals02>'.$Equals02$fsx
|
||||
extends [mscorlib]System.Object
|
||||
{
|
||||
} // end of class '<StartupCode$Equals02>'.$Equals02$fsx
|
||||
|
||||
|
||||
// =============================================================
|
||||
|
||||
// *********** DISASSEMBLY COMPLETE ***********************
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-0759-3313-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x02630000
|
||||
// Image base: 0x071F0000
|
||||
|
||||
|
||||
// =============== 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 ''
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-9642-788D-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x02DA0000
|
||||
// Image base: 0x05560000
|
||||
|
||||
|
||||
// =============== 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: callvirt instance int32 [mscorlib]System.Object::GetHashCode()
|
||||
IL_0012: callvirt instance int32 [netstandard]System.Object::GetHashCode()
|
||||
IL_0017: xor
|
||||
IL_0018: xor
|
||||
IL_0019: stloc.0
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0
|
||||
// Microsoft (R) .NET Framework IL Disassembler. Version 4.8.3928.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: {5F1FBE49-9642-7838-A745-038349BE1F5F}
|
||||
.imagebase 0x00400000
|
||||
.file alignment 0x00000200
|
||||
.stackreserve 0x00100000
|
||||
.subsystem 0x0003 // WINDOWS_CUI
|
||||
.corflags 0x00000001 // ILONLY
|
||||
// Image base: 0x012B0000
|
||||
// Image base: 0x06790000
|
||||
|
||||
|
||||
// =============== 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: callvirt instance int32 [mscorlib]System.Object::GetHashCode()
|
||||
IL_0012: callvirt instance int32 [netstandard]System.Object::GetHashCode()
|
||||
IL_0017: xor
|
||||
IL_0018: xor
|
||||
IL_0019: stloc.0
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
<OutputType>Exe</OutputType>
|
||||
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
|
||||
<DisableOutputPathCopying>true</DisableOutputPathCopying>
|
||||
|
|
|
@ -128,22 +128,6 @@ let u = Case1 3
|
|||
(Project1B.dllName, Project1B.options); |] }
|
||||
let cleanFileName a = if a = fileName1 then "file1" else "??"
|
||||
|
||||
|
||||
|
||||
[<Test>]
|
||||
#if NETCOREAPP
|
||||
[<Ignore("SKIPPED: need to check if these tests can be enabled for .NET Core testing of FSharp.Compiler.Service")>]
|
||||
#endif
|
||||
let ``Test multi project 1 whole project errors`` () =
|
||||
|
||||
let wholeProjectResults = checker.ParseAndCheckProject(MultiProject1.options) |> Async.RunSynchronously
|
||||
|
||||
for e in wholeProjectResults.Errors do
|
||||
printfn "multi project 1 error: <<<%s>>>" e.Message
|
||||
|
||||
wholeProjectResults .Errors.Length |> shouldEqual 0
|
||||
wholeProjectResults.ProjectContext.GetReferencedAssemblies().Length |> shouldEqual 7
|
||||
|
||||
[<Test>]
|
||||
let ``Test multi project 1 basic`` () =
|
||||
|
||||
|
@ -321,22 +305,6 @@ let p = ("""
|
|||
let size = (if ensureBigEnough then numProjectsForStressTest + 10 else numProjectsForStressTest / 2 )
|
||||
FSharpChecker.Create(projectCacheSize=size)
|
||||
|
||||
[<Test>]
|
||||
#if NETCOREAPP
|
||||
[<Ignore("SKIPPED: need to check if these tests can be enabled for .NET Core testing of FSharp.Compiler.Service")>]
|
||||
#endif
|
||||
let ``Test ManyProjectsStressTest whole project errors`` () =
|
||||
|
||||
let checker = ManyProjectsStressTest.makeCheckerForStressTest true
|
||||
let wholeProjectResults = checker.ParseAndCheckProject(ManyProjectsStressTest.jointProject.Options) |> Async.RunSynchronously
|
||||
let wholeProjectResults = checker.ParseAndCheckProject(ManyProjectsStressTest.jointProject.Options) |> Async.RunSynchronously
|
||||
|
||||
for e in wholeProjectResults.Errors do
|
||||
printfn "ManyProjectsStressTest error: <<<%s>>>" e.Message
|
||||
|
||||
wholeProjectResults .Errors.Length |> shouldEqual 0
|
||||
wholeProjectResults.ProjectContext.GetReferencedAssemblies().Length |> shouldEqual (ManyProjectsStressTest.numProjectsForStressTest + 5)
|
||||
|
||||
[<Test>]
|
||||
let ``Test ManyProjectsStressTest basic`` () =
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
|
||||
<UnitTestType>nunit</UnitTestType>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -106,7 +106,7 @@
|
|||
<NgenArchitecture>All</NgenArchitecture>
|
||||
<NgenPriority>2</NgenPriority>
|
||||
<Private>True</Private>
|
||||
<AdditionalProperties>TargetFramework=net45</AdditionalProperties>
|
||||
<AdditionalProperties>TargetFramework=netstandard2.0</AdditionalProperties>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\..\..\src\fsharp\fsiAnyCpu\fsiAnyCpu.fsproj">
|
||||
<Project>{8B3E283D-B5FE-4055-9D80-7E3A32F3967B}</Project>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
|
||||
</PropertyGroup>
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
<DisableImplicitFSharpCoreReference>true</DisableImplicitFSharpCoreReference>
|
||||
</PropertyGroup>
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net45</TargetFramework>
|
||||
<TargetFramework>net472</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
|
|
@ -4673,7 +4673,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)
|
||||
|
||||
/// Tests whether we're correctly showing both type and module when they have the same name
|
||||
[<Test>]
|
||||
|
|
|
@ -915,7 +915,7 @@ type UsingMSBuild() as this =
|
|||
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
|
||||
AssertContains(tooltip, @"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,
|
||||
//
|
||||
|
|
Загрузка…
Ссылка в новой задаче