diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 81f7d758d0d..5d790eccac0 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -8,9 +8,9 @@ - + https://github.com/dotnet/arcade - 1b053babb8a542e3ab20f93b3d0aedc732b7e0c7 + 6a8491b61e0c243cbb6a7ff4966b48e6d1e075b1 diff --git a/eng/common/sdl/configure-sdl-tool.ps1 b/eng/common/sdl/configure-sdl-tool.ps1 new file mode 100644 index 00000000000..4999c307088 --- /dev/null +++ b/eng/common/sdl/configure-sdl-tool.ps1 @@ -0,0 +1,109 @@ +Param( + [string] $GuardianCliLocation, + [string] $WorkingDirectory, + [string] $TargetDirectory, + [string] $GdnFolder, + # The list of Guardian tools to configure. For each object in the array: + # - If the item is a [hashtable], it must contain these entries: + # - Name = The tool name as Guardian knows it. + # - Scenario = (Optional) Scenario-specific name for this configuration entry. It must be unique + # among all tool entries with the same Name. + # - Args = (Optional) Array of Guardian tool configuration args, like '@("Target > C:\temp")' + # - If the item is a [string] $v, it is treated as '@{ Name="$v" }' + [object[]] $ToolsList, + [string] $GuardianLoggerLevel='Standard', + # Optional: Additional params to add to any tool using CredScan. + [string[]] $CrScanAdditionalRunConfigParams, + # Optional: Additional params to add to any tool using PoliCheck. + [string[]] $PoliCheckAdditionalRunConfigParams +) + +$ErrorActionPreference = 'Stop' +Set-StrictMode -Version 2.0 +$disableConfigureToolsetImport = $true +$global:LASTEXITCODE = 0 + +try { + # `tools.ps1` checks $ci to perform some actions. Since the SDL + # scripts don't necessarily execute in the same agent that run the + # build.ps1/sh script this variable isn't automatically set. + $ci = $true + . $PSScriptRoot\..\tools.ps1 + + # Normalize tools list: all in [hashtable] form with defined values for each key. + $ToolsList = $ToolsList | + ForEach-Object { + if ($_ -is [string]) { + $_ = @{ Name = $_ } + } + + if (-not ($_['Scenario'])) { $_.Scenario = "" } + if (-not ($_['Args'])) { $_.Args = @() } + $_ + } + + Write-Host "List of tools to configure:" + $ToolsList | ForEach-Object { $_ | Out-String | Write-Host } + + # We store config files in the r directory of .gdn + $gdnConfigPath = Join-Path $GdnFolder 'r' + $ValidPath = Test-Path $GuardianCliLocation + + if ($ValidPath -eq $False) + { + Write-PipelineTelemetryError -Force -Category 'Sdl' -Message "Invalid Guardian CLI Location." + ExitWithExitCode 1 + } + + foreach ($tool in $ToolsList) { + # Put together the name and scenario to make a unique key. + $toolConfigName = $tool.Name + if ($tool.Scenario) { + $toolConfigName += "_" + $tool.Scenario + } + + Write-Host "=== Configuring $toolConfigName..." + + $gdnConfigFile = Join-Path $gdnConfigPath "$toolConfigName-configure.gdnconfig" + + # For some tools, add default and automatic args. + if ($tool.Name -eq 'credscan') { + if ($targetDirectory) { + $tool.Args += "TargetDirectory < $TargetDirectory" + } + $tool.Args += "OutputType < pre" + $tool.Args += $CrScanAdditionalRunConfigParams + } elseif ($tool.Name -eq 'policheck') { + if ($targetDirectory) { + $tool.Args += "Target < $TargetDirectory" + } + $tool.Args += $PoliCheckAdditionalRunConfigParams + } + + # Create variable pointing to the args array directly so we can use splat syntax later. + $toolArgs = $tool.Args + + # Configure the tool. If args array is provided or the current tool has some default arguments + # defined, add "--args" and splat each element on the end. Arg format is "{Arg id} < {Value}", + # one per parameter. Doc page for "guardian configure": + # https://dev.azure.com/securitytools/SecurityIntegration/_wiki/wikis/Guardian/1395/configure + Exec-BlockVerbosely { + & $GuardianCliLocation configure ` + --working-directory $WorkingDirectory ` + --tool $tool.Name ` + --output-path $gdnConfigFile ` + --logger-level $GuardianLoggerLevel ` + --noninteractive ` + --force ` + $(if ($toolArgs) { "--args" }) @toolArgs + Exit-IfNZEC "Sdl" + } + + Write-Host "Created '$toolConfigName' configuration file: $gdnConfigFile" + } +} +catch { + Write-Host $_.ScriptStackTrace + Write-PipelineTelemetryError -Force -Category 'Sdl' -Message $_ + ExitWithExitCode 1 +} diff --git a/eng/common/sdl/execute-all-sdl-tools.ps1 b/eng/common/sdl/execute-all-sdl-tools.ps1 index 2881a56083c..1157151f486 100644 --- a/eng/common/sdl/execute-all-sdl-tools.ps1 +++ b/eng/common/sdl/execute-all-sdl-tools.ps1 @@ -7,8 +7,17 @@ Param( [string] $SourceDirectory=$env:BUILD_SOURCESDIRECTORY, # Required: the directory where source files are located [string] $ArtifactsDirectory = (Join-Path $env:BUILD_ARTIFACTSTAGINGDIRECTORY ('artifacts')), # Required: the directory where build artifacts are located [string] $AzureDevOpsAccessToken, # Required: access token for dnceng; should be provided via KeyVault - [string[]] $SourceToolsList, # Optional: list of SDL tools to run on source code - [string[]] $ArtifactToolsList, # Optional: list of SDL tools to run on built artifacts + + # Optional: list of SDL tools to run on source code. See 'configure-sdl-tool.ps1' for tools list + # format. + [object[]] $SourceToolsList, + # Optional: list of SDL tools to run on built artifacts. See 'configure-sdl-tool.ps1' for tools + # list format. + [object[]] $ArtifactToolsList, + # Optional: list of SDL tools to run without automatically specifying a target directory. See + # 'configure-sdl-tool.ps1' for tools list format. + [object[]] $CustomToolsList, + [bool] $TsaPublish=$False, # Optional: true will publish results to TSA; only set to true after onboarding to TSA; TSA is the automated framework used to upload test results as bugs. [string] $TsaBranchName=$env:BUILD_SOURCEBRANCH, # Optional: required for TSA publish; defaults to $(Build.SourceBranchName); TSA is the automated framework used to upload test results as bugs. [string] $TsaRepositoryName=$env:BUILD_REPOSITORY_NAME, # Optional: TSA repository name; will be generated automatically if not submitted; TSA is the automated framework used to upload test results as bugs. @@ -63,13 +72,16 @@ try { ExitWithExitCode 1 } - & $(Join-Path $PSScriptRoot 'init-sdl.ps1') -GuardianCliLocation $guardianCliLocation -Repository $RepoName -BranchName $BranchName -WorkingDirectory $workingDirectory -AzureDevOpsAccessToken $AzureDevOpsAccessToken -GuardianLoggerLevel $GuardianLoggerLevel + Exec-BlockVerbosely { + & $(Join-Path $PSScriptRoot 'init-sdl.ps1') -GuardianCliLocation $guardianCliLocation -Repository $RepoName -BranchName $BranchName -WorkingDirectory $workingDirectory -AzureDevOpsAccessToken $AzureDevOpsAccessToken -GuardianLoggerLevel $GuardianLoggerLevel + } $gdnFolder = Join-Path $workingDirectory '.gdn' if ($TsaOnboard) { if ($TsaCodebaseName -and $TsaNotificationEmail -and $TsaCodebaseAdmin -and $TsaBugAreaPath) { - Write-Host "$guardianCliLocation tsa-onboard --codebase-name `"$TsaCodebaseName`" --notification-alias `"$TsaNotificationEmail`" --codebase-admin `"$TsaCodebaseAdmin`" --instance-url `"$TsaInstanceUrl`" --project-name `"$TsaProjectName`" --area-path `"$TsaBugAreaPath`" --iteration-path `"$TsaIterationPath`" --working-directory $workingDirectory --logger-level $GuardianLoggerLevel" - & $guardianCliLocation tsa-onboard --codebase-name "$TsaCodebaseName" --notification-alias "$TsaNotificationEmail" --codebase-admin "$TsaCodebaseAdmin" --instance-url "$TsaInstanceUrl" --project-name "$TsaProjectName" --area-path "$TsaBugAreaPath" --iteration-path "$TsaIterationPath" --working-directory $workingDirectory --logger-level $GuardianLoggerLevel + Exec-BlockVerbosely { + & $guardianCliLocation tsa-onboard --codebase-name "$TsaCodebaseName" --notification-alias "$TsaNotificationEmail" --codebase-admin "$TsaCodebaseAdmin" --instance-url "$TsaInstanceUrl" --project-name "$TsaProjectName" --area-path "$TsaBugAreaPath" --iteration-path "$TsaIterationPath" --working-directory $workingDirectory --logger-level $GuardianLoggerLevel + } if ($LASTEXITCODE -ne 0) { Write-PipelineTelemetryError -Force -Category 'Sdl' -Message "Guardian tsa-onboard failed with exit code $LASTEXITCODE." ExitWithExitCode $LASTEXITCODE @@ -80,11 +92,41 @@ try { } } - if ($ArtifactToolsList -and $ArtifactToolsList.Count -gt 0) { - & $(Join-Path $PSScriptRoot 'run-sdl.ps1') -GuardianCliLocation $guardianCliLocation -WorkingDirectory $workingDirectory -TargetDirectory $ArtifactsDirectory -GdnFolder $gdnFolder -ToolsList $ArtifactToolsList -AzureDevOpsAccessToken $AzureDevOpsAccessToken -UpdateBaseline $UpdateBaseline -GuardianLoggerLevel $GuardianLoggerLevel -CrScanAdditionalRunConfigParams $CrScanAdditionalRunConfigParams -PoliCheckAdditionalRunConfigParams $PoliCheckAdditionalRunConfigParams + # Configure a list of tools with a default target directory. Populates the ".gdn/r" directory. + function Configure-ToolsList([object[]] $tools, [string] $targetDirectory) { + if ($tools -and $tools.Count -gt 0) { + Exec-BlockVerbosely { + & $(Join-Path $PSScriptRoot 'configure-sdl-tool.ps1') ` + -GuardianCliLocation $guardianCliLocation ` + -WorkingDirectory $workingDirectory ` + -TargetDirectory $targetDirectory ` + -GdnFolder $gdnFolder ` + -ToolsList $tools ` + -AzureDevOpsAccessToken $AzureDevOpsAccessToken ` + -GuardianLoggerLevel $GuardianLoggerLevel ` + -CrScanAdditionalRunConfigParams $CrScanAdditionalRunConfigParams ` + -PoliCheckAdditionalRunConfigParams $PoliCheckAdditionalRunConfigParams + if ($BreakOnFailure) { + Exit-IfNZEC "Sdl" + } + } + } } - if ($SourceToolsList -and $SourceToolsList.Count -gt 0) { - & $(Join-Path $PSScriptRoot 'run-sdl.ps1') -GuardianCliLocation $guardianCliLocation -WorkingDirectory $workingDirectory -TargetDirectory $SourceDirectory -GdnFolder $gdnFolder -ToolsList $SourceToolsList -AzureDevOpsAccessToken $AzureDevOpsAccessToken -UpdateBaseline $UpdateBaseline -GuardianLoggerLevel $GuardianLoggerLevel -CrScanAdditionalRunConfigParams $CrScanAdditionalRunConfigParams -PoliCheckAdditionalRunConfigParams $PoliCheckAdditionalRunConfigParams + + # Configure Artifact and Source tools with default Target directories. + Configure-ToolsList $ArtifactToolsList $ArtifactsDirectory + Configure-ToolsList $SourceToolsList $SourceDirectory + # Configure custom tools with no default Target directory. + Configure-ToolsList $CustomToolsList $null + + # At this point, all tools are configured in the ".gdn" directory. Run them all in a single call. + # (If we used "run" multiple times, each run would overwrite data from earlier runs.) + Exec-BlockVerbosely { + & $(Join-Path $PSScriptRoot 'run-sdl.ps1') ` + -GuardianCliLocation $guardianCliLocation ` + -WorkingDirectory $workingDirectory ` + -UpdateBaseline $UpdateBaseline ` + -GdnFolder $gdnFolder } if ($TsaPublish) { @@ -92,8 +134,9 @@ try { if (-not $TsaRepositoryName) { $TsaRepositoryName = "$($Repository)-$($BranchName)" } - Write-Host "$guardianCliLocation tsa-publish --all-tools --repository-name `"$TsaRepositoryName`" --branch-name `"$TsaBranchName`" --build-number `"$BuildNumber`" --codebase-name `"$TsaCodebaseName`" --notification-alias `"$TsaNotificationEmail`" --codebase-admin `"$TsaCodebaseAdmin`" --instance-url `"$TsaInstanceUrl`" --project-name `"$TsaProjectName`" --area-path `"$TsaBugAreaPath`" --iteration-path `"$TsaIterationPath`" --working-directory $workingDirectory --logger-level $GuardianLoggerLevel" - & $guardianCliLocation tsa-publish --all-tools --repository-name "$TsaRepositoryName" --branch-name "$TsaBranchName" --build-number "$BuildNumber" --onboard $True --codebase-name "$TsaCodebaseName" --notification-alias "$TsaNotificationEmail" --codebase-admin "$TsaCodebaseAdmin" --instance-url "$TsaInstanceUrl" --project-name "$TsaProjectName" --area-path "$TsaBugAreaPath" --iteration-path "$TsaIterationPath" --working-directory $workingDirectory --logger-level $GuardianLoggerLevel + Exec-BlockVerbosely { + & $guardianCliLocation tsa-publish --all-tools --repository-name "$TsaRepositoryName" --branch-name "$TsaBranchName" --build-number "$BuildNumber" --onboard $True --codebase-name "$TsaCodebaseName" --notification-alias "$TsaNotificationEmail" --codebase-admin "$TsaCodebaseAdmin" --instance-url "$TsaInstanceUrl" --project-name "$TsaProjectName" --area-path "$TsaBugAreaPath" --iteration-path "$TsaIterationPath" --working-directory $workingDirectory --logger-level $GuardianLoggerLevel + } if ($LASTEXITCODE -ne 0) { Write-PipelineTelemetryError -Force -Category 'Sdl' -Message "Guardian tsa-publish failed with exit code $LASTEXITCODE." ExitWithExitCode $LASTEXITCODE @@ -106,7 +149,11 @@ try { if ($BreakOnFailure) { Write-Host "Failing the build in case of breaking results..." - & $guardianCliLocation break + Exec-BlockVerbosely { + & $guardianCliLocation break --working-directory $workingDirectory --logger-level $GuardianLoggerLevel + } + } else { + Write-Host "Letting the build pass even if there were breaking results..." } } catch { diff --git a/eng/common/sdl/extract-artifact-archives.ps1 b/eng/common/sdl/extract-artifact-archives.ps1 new file mode 100644 index 00000000000..68da4fbf257 --- /dev/null +++ b/eng/common/sdl/extract-artifact-archives.ps1 @@ -0,0 +1,63 @@ +# This script looks for each archive file in a directory and extracts it into the target directory. +# For example, the file "$InputPath/bin.tar.gz" extracts to "$ExtractPath/bin.tar.gz.extracted/**". +# Uses the "tar" utility added to Windows 10 / Windows 2019 that supports tar.gz and zip. +param( + # Full path to directory where archives are stored. + [Parameter(Mandatory=$true)][string] $InputPath, + # Full path to directory to extract archives into. May be the same as $InputPath. + [Parameter(Mandatory=$true)][string] $ExtractPath +) + +$ErrorActionPreference = 'Stop' +Set-StrictMode -Version 2.0 + +$disableConfigureToolsetImport = $true + +try { + # `tools.ps1` checks $ci to perform some actions. Since the SDL + # scripts don't necessarily execute in the same agent that run the + # build.ps1/sh script this variable isn't automatically set. + $ci = $true + . $PSScriptRoot\..\tools.ps1 + + Measure-Command { + $jobs = @() + + # Find archive files for non-Windows and Windows builds. + $archiveFiles = @( + Get-ChildItem (Join-Path $InputPath "*.tar.gz") + Get-ChildItem (Join-Path $InputPath "*.zip") + ) + + foreach ($targzFile in $archiveFiles) { + $jobs += Start-Job -ScriptBlock { + $file = $using:targzFile + $fileName = [System.IO.Path]::GetFileName($file) + $extractDir = Join-Path $using:ExtractPath "$fileName.extracted" + + New-Item $extractDir -ItemType Directory -Force | Out-Null + + Write-Host "Extracting '$file' to '$extractDir'..." + + # Pipe errors to stdout to prevent PowerShell detecting them and quitting the job early. + # This type of quit skips the catch, so we wouldn't be able to tell which file triggered the + # error. Save output so it can be stored in the exception string along with context. + $output = tar -xf $file -C $extractDir 2>&1 + # Handle NZEC manually rather than using Exit-IfNZEC: we are in a background job, so we + # don't have access to the outer scope. + if ($LASTEXITCODE -ne 0) { + throw "Error extracting '$file': non-zero exit code ($LASTEXITCODE). Output: '$output'" + } + + Write-Host "Extracted to $extractDir" + } + } + + Receive-Job $jobs -Wait + } +} +catch { + Write-Host $_ + Write-PipelineTelemetryError -Force -Category 'Sdl' -Message $_ + ExitWithExitCode 1 +} diff --git a/eng/common/sdl/run-sdl.ps1 b/eng/common/sdl/run-sdl.ps1 index 3d9c87aba6a..2eac8c78f10 100644 --- a/eng/common/sdl/run-sdl.ps1 +++ b/eng/common/sdl/run-sdl.ps1 @@ -1,13 +1,9 @@ Param( [string] $GuardianCliLocation, [string] $WorkingDirectory, - [string] $TargetDirectory, [string] $GdnFolder, - [string[]] $ToolsList, [string] $UpdateBaseline, - [string] $GuardianLoggerLevel='Standard', - [string[]] $CrScanAdditionalRunConfigParams, - [string[]] $PoliCheckAdditionalRunConfigParams + [string] $GuardianLoggerLevel='Standard' ) $ErrorActionPreference = 'Stop' @@ -23,7 +19,6 @@ try { . $PSScriptRoot\..\tools.ps1 # We store config files in the r directory of .gdn - Write-Host $ToolsList $gdnConfigPath = Join-Path $GdnFolder 'r' $ValidPath = Test-Path $GuardianCliLocation @@ -33,37 +28,18 @@ try { ExitWithExitCode 1 } - $configParam = @('--config') - - foreach ($tool in $ToolsList) { - $gdnConfigFile = Join-Path $gdnConfigPath "$tool-configure.gdnconfig" - Write-Host $tool - # We have to manually configure tools that run on source to look at the source directory only - if ($tool -eq 'credscan') { - Write-Host "$GuardianCliLocation configure --working-directory $WorkingDirectory --tool $tool --output-path $gdnConfigFile --logger-level $GuardianLoggerLevel --noninteractive --force --args `" TargetDirectory < $TargetDirectory `" `" OutputType < pre `" $(If ($CrScanAdditionalRunConfigParams) {$CrScanAdditionalRunConfigParams})" - & $GuardianCliLocation configure --working-directory $WorkingDirectory --tool $tool --output-path $gdnConfigFile --logger-level $GuardianLoggerLevel --noninteractive --force --args " TargetDirectory < $TargetDirectory " "OutputType < pre" $(If ($CrScanAdditionalRunConfigParams) {$CrScanAdditionalRunConfigParams}) - if ($LASTEXITCODE -ne 0) { - Write-PipelineTelemetryError -Force -Category 'Sdl' -Message "Guardian configure for $tool failed with exit code $LASTEXITCODE." - ExitWithExitCode $LASTEXITCODE - } - } - if ($tool -eq 'policheck') { - Write-Host "$GuardianCliLocation configure --working-directory $WorkingDirectory --tool $tool --output-path $gdnConfigFile --logger-level $GuardianLoggerLevel --noninteractive --force --args `" Target < $TargetDirectory `" $(If ($PoliCheckAdditionalRunConfigParams) {$PoliCheckAdditionalRunConfigParams})" - & $GuardianCliLocation configure --working-directory $WorkingDirectory --tool $tool --output-path $gdnConfigFile --logger-level $GuardianLoggerLevel --noninteractive --force --args " Target < $TargetDirectory " $(If ($PoliCheckAdditionalRunConfigParams) {$PoliCheckAdditionalRunConfigParams}) - if ($LASTEXITCODE -ne 0) { - Write-PipelineTelemetryError -Force -Category 'Sdl' -Message "Guardian configure for $tool failed with exit code $LASTEXITCODE." - ExitWithExitCode $LASTEXITCODE - } - } - - $configParam+=$gdnConfigFile - } - - Write-Host "$GuardianCliLocation run --working-directory $WorkingDirectory --baseline mainbaseline --update-baseline $UpdateBaseline --logger-level $GuardianLoggerLevel $configParam" - & $GuardianCliLocation run --working-directory $WorkingDirectory --tool $tool --baseline mainbaseline --update-baseline $UpdateBaseline --logger-level $GuardianLoggerLevel $configParam - if ($LASTEXITCODE -ne 0) { - Write-PipelineTelemetryError -Force -Category 'Sdl' -Message "Guardian run for $ToolsList using $configParam failed with exit code $LASTEXITCODE." - ExitWithExitCode $LASTEXITCODE + $gdnConfigFiles = Get-ChildItem $gdnConfigPath -Recurse -Include '*.gdnconfig' + Write-Host "Discovered Guardian config files:" + $gdnConfigFiles | Out-String | Write-Host + + Exec-BlockVerbosely { + & $GuardianCliLocation run ` + --working-directory $WorkingDirectory ` + --baseline mainbaseline ` + --update-baseline $UpdateBaseline ` + --logger-level $GuardianLoggerLevel ` + --config @gdnConfigFiles + Exit-IfNZEC "Sdl" } } catch { diff --git a/eng/common/templates/job/execute-sdl.yml b/eng/common/templates/job/execute-sdl.yml index 4a32181fd8f..69eb67849d7 100644 --- a/eng/common/templates/job/execute-sdl.yml +++ b/eng/common/templates/job/execute-sdl.yml @@ -2,17 +2,41 @@ parameters: enable: 'false' # Whether the SDL validation job should execute or not overrideParameters: '' # Optional: to override values for parameters. additionalParameters: '' # Optional: parameters that need user specific values eg: '-SourceToolsList @("abc","def") -ArtifactToolsList @("ghi","jkl")' + # Optional: if specified, restore and use this version of Guardian instead of the default. + overrideGuardianVersion: '' + # Optional: if true, publish the '.gdn' folder as a pipeline artifact. This can help with in-depth + # diagnosis of problems with specific tool configurations. + publishGuardianDirectoryToPipeline: false + # The script to run to execute all SDL tools. Use this if you want to use a script to define SDL + # parameters rather than relying on YAML. It may be better to use a local script, because you can + # reproduce results locally without piecing together a command based on the YAML. + executeAllSdlToolsScript: 'eng/common/sdl/execute-all-sdl-tools.ps1' # There is some sort of bug (has been reported) in Azure DevOps where if this parameter is named # 'continueOnError', the parameter value is not correctly picked up. # This can also be remedied by the caller (post-build.yml) if it does not use a nested parameter sdlContinueOnError: false # optional: determines whether to continue the build if the step errors; - downloadArtifacts: true # optional: determines if the artifacts should be dowloaded + # optional: determines if build artifacts should be downloaded. + downloadArtifacts: true + # optional: determines if this job should search the directory of downloaded artifacts for + # 'tar.gz' and 'zip' archive files and extract them before running SDL validation tasks. + extractArchiveArtifacts: false dependsOn: '' # Optional: dependencies of the job artifactNames: '' # Optional: patterns supplied to DownloadBuildArtifacts # Usage: # artifactNames: # - 'BlobArtifacts' # - 'Artifacts_Windows_NT_Release' + # Optional: download a list of pipeline artifacts. 'downloadArtifacts' controls build artifacts, + # not pipeline artifacts, so doesn't affect the use of this parameter. + pipelineArtifactNames: [] + # Optional: location and ID of the AzDO build that the build/pipeline artifacts should be + # downloaded from. By default, uses runtime expressions to decide based on the variables set by + # the 'setupMaestroVars' dependency. Overriding this parameter is necessary if SDL tasks are + # running without Maestro++/BAR involved, or to download artifacts from a specific existing build + # to iterate quickly on SDL changes. + AzDOProjectName: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ] + AzDOPipelineId: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ] + AzDOBuildId: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ] jobs: - job: Run_SDL @@ -22,16 +46,29 @@ jobs: variables: - group: DotNet-VSTS-Bot - name: AzDOProjectName - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOProjectName'] ] + value: ${{ parameters.AzDOProjectName }} - name: AzDOPipelineId - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOPipelineId'] ] + value: ${{ parameters.AzDOPipelineId }} - name: AzDOBuildId - value: $[ dependencies.setupMaestroVars.outputs['setReleaseVars.AzDOBuildId'] ] + value: ${{ parameters.AzDOBuildId }} + # The Guardian version specified in 'eng/common/sdl/packages.config'. This value must be kept in + # sync with the packages.config file. + - name: DefaultGuardianVersion + value: 0.53.3 + - name: GuardianVersion + value: ${{ coalesce(parameters.overrideGuardianVersion, '$(DefaultGuardianVersion)') }} + - name: GuardianPackagesConfigFile + value: $(Build.SourcesDirectory)\eng\common\sdl\packages.config pool: - name: Hosted VS2017 + # To extract archives (.tar.gz, .zip), we need access to "tar", added in Windows 10/2019. + ${{ if eq(parameters.extractArchiveArtifacts, 'false') }}: + name: Hosted VS2017 + ${{ if ne(parameters.extractArchiveArtifacts, 'false') }}: + vmImage: windows-2019 steps: - checkout: self clean: true + - ${{ if ne(parameters.downloadArtifacts, 'false')}}: - ${{ if ne(parameters.artifactNames, '') }}: - ${{ each artifactName in parameters.artifactNames }}: @@ -59,16 +96,51 @@ jobs: itemPattern: "**" downloadPath: $(Build.ArtifactStagingDirectory)\artifacts checkDownloadedFiles: true + + - ${{ each artifactName in parameters.pipelineArtifactNames }}: + - task: DownloadPipelineArtifact@2 + displayName: Download Pipeline Artifacts + inputs: + buildType: specific + buildVersionToDownload: specific + project: $(AzDOProjectName) + pipeline: $(AzDOPipelineId) + buildId: $(AzDOBuildId) + artifactName: ${{ artifactName }} + downloadPath: $(Build.ArtifactStagingDirectory)\artifacts + checkDownloadedFiles: true + - powershell: eng/common/sdl/extract-artifact-packages.ps1 -InputPath $(Build.ArtifactStagingDirectory)\artifacts\BlobArtifacts -ExtractPath $(Build.ArtifactStagingDirectory)\artifacts\BlobArtifacts displayName: Extract Blob Artifacts continueOnError: ${{ parameters.sdlContinueOnError }} + - powershell: eng/common/sdl/extract-artifact-packages.ps1 -InputPath $(Build.ArtifactStagingDirectory)\artifacts\PackageArtifacts -ExtractPath $(Build.ArtifactStagingDirectory)\artifacts\PackageArtifacts displayName: Extract Package Artifacts continueOnError: ${{ parameters.sdlContinueOnError }} + + - ${{ if ne(parameters.extractArchiveArtifacts, 'false') }}: + - powershell: eng/common/sdl/extract-artifact-archives.ps1 + -InputPath $(Build.ArtifactStagingDirectory)\artifacts + -ExtractPath $(Build.ArtifactStagingDirectory)\artifacts + displayName: Extract Archive Artifacts + continueOnError: ${{ parameters.sdlContinueOnError }} + + - ${{ if ne(parameters.overrideGuardianVersion, '') }}: + - powershell: | + $content = Get-Content $(GuardianPackagesConfigFile) + + Write-Host "packages.config content was:`n$content" + + $content = $content.Replace('$(DefaultGuardianVersion)', '$(GuardianVersion)') + $content | Set-Content $(GuardianPackagesConfigFile) + + Write-Host "packages.config content updated to:`n$content" + displayName: Use overridden Guardian version ${{ parameters.overrideGuardianVersion }} + - task: NuGetToolInstaller@1 displayName: 'Install NuGet.exe' - task: NuGetCommand@2 @@ -79,15 +151,35 @@ jobs: nugetConfigPath: $(Build.SourcesDirectory)\eng\common\sdl\NuGet.config externalFeedCredentials: GuardianConnect restoreDirectory: $(Build.SourcesDirectory)\.packages + - ${{ if ne(parameters.overrideParameters, '') }}: - - powershell: eng/common/sdl/execute-all-sdl-tools.ps1 ${{ parameters.overrideParameters }} + - powershell: ${{ parameters.executeAllSdlToolsScript }} ${{ parameters.overrideParameters }} displayName: Execute SDL continueOnError: ${{ parameters.sdlContinueOnError }} - ${{ if eq(parameters.overrideParameters, '') }}: - - powershell: eng/common/sdl/execute-all-sdl-tools.ps1 - -GuardianPackageName Microsoft.Guardian.Cli.0.53.3 + - powershell: ${{ parameters.executeAllSdlToolsScript }} + -GuardianPackageName Microsoft.Guardian.Cli.$(GuardianVersion) -NugetPackageDirectory $(Build.SourcesDirectory)\.packages -AzureDevOpsAccessToken $(dn-bot-dotnet-build-rw-code-rw) ${{ parameters.additionalParameters }} displayName: Execute SDL continueOnError: ${{ parameters.sdlContinueOnError }} + + - ${{ if ne(parameters.publishGuardianDirectoryToPipeline, 'false') }}: + # We want to publish the Guardian results and configuration for easy diagnosis. However, the + # '.gdn' dir is a mix of configuration, results, extracted dependencies, and Guardian default + # tooling files. Some of these files are large and aren't useful during an investigation, so + # exclude them by simply deleting them before publishing. (As of writing, there is no documented + # way to selectively exclude a dir from the pipeline artifact publish task.) + - task: DeleteFiles@1 + displayName: Delete Guardian dependencies to avoid uploading + inputs: + SourceFolder: $(Agent.BuildDirectory)/.gdn + Contents: | + c + i + condition: succeededOrFailed() + - publish: $(Agent.BuildDirectory)/.gdn + artifact: GuardianConfiguration + displayName: Publish GuardianConfiguration + condition: succeededOrFailed() diff --git a/eng/common/tools.ps1 b/eng/common/tools.ps1 index 2df0909937d..5d526c74d51 100644 --- a/eng/common/tools.ps1 +++ b/eng/common/tools.ps1 @@ -106,6 +106,46 @@ function Exec-Process([string]$command, [string]$commandArgs) { } } +# Take the given block, print it, print what the block probably references from the current set of +# variables using low-effort string matching, then run the block. +# +# This is intended to replace the pattern of manually copy-pasting a command, wrapping it in quotes, +# and printing it using "Write-Host". The copy-paste method is more readable in build logs, but less +# maintainable and less reliable. It is easy to make a mistake and modify the command without +# properly updating the "Write-Host" line, resulting in misleading build logs. The probability of +# this mistake makes the pattern hard to trust when it shows up in build logs. Finding the bug in +# existing source code can also be difficult, because the strings are not aligned to each other and +# the line may be 300+ columns long. +# +# By removing the need to maintain two copies of the command, Exec-BlockVerbosely avoids the issues. +# +# In Bash (or any posix-like shell), "set -x" prints usable verbose output automatically. +# "Set-PSDebug" appears to be similar at first glance, but unfortunately, it isn't very useful: it +# doesn't print any info about the variables being used by the command, which is normally the +# interesting part to diagnose. +function Exec-BlockVerbosely([scriptblock] $block) { + Write-Host "--- Running script block:" + $blockString = $block.ToString().Trim() + Write-Host $blockString + + Write-Host "--- List of variables that might be used:" + # For each variable x in the environment, check the block for a reference to x via simple "$x" or + # "@x" syntax. This doesn't detect other ways to reference variables ("${x}" nor "$variable:x", + # among others). It only catches what this function was originally written for: simple + # command-line commands. + $variableTable = Get-Variable | + Where-Object { + $blockString.Contains("`$$($_.Name)") -or $blockString.Contains("@$($_.Name)") + } | + Format-Table -AutoSize -HideTableHeaders -Wrap | + Out-String + Write-Host $variableTable.Trim() + + Write-Host "--- Executing:" + & $block + Write-Host "--- Done running script block!" +} + # createSdkLocationFile parameter enables a file being generated under the toolset directory # which writes the sdk's location into. This is only necessary for cmd --> powershell invocations # as dot sourcing isn't possible. @@ -632,6 +672,17 @@ function ExitWithExitCode([int] $exitCode) { exit $exitCode } +# Check if $LASTEXITCODE is a nonzero exit code (NZEC). If so, print a Azure Pipeline error for +# diagnostics, then exit the script with the $LASTEXITCODE. +function Exit-IfNZEC([string] $category = "General") { + Write-Host "Exit code $LASTEXITCODE" + if ($LASTEXITCODE -ne 0) { + $message = "Last command failed with exit code $LASTEXITCODE." + Write-PipelineTelemetryError -Force -Category $category -Message $message + ExitWithExitCode $LASTEXITCODE + } +} + function Stop-Processes() { Write-Host 'Killing running build processes...' foreach ($processName in $processesToStopOnExit) { diff --git a/global.json b/global.json index 0d4aa88a2e7..312cc40364d 100644 --- a/global.json +++ b/global.json @@ -13,7 +13,7 @@ } }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "6.0.0-beta.21363.2", + "Microsoft.DotNet.Arcade.Sdk": "6.0.0-beta.21364.3", "Microsoft.DotNet.Helix.Sdk": "2.0.0-beta.19069.2" } } diff --git a/src/fsharp/FSharp.Core/async.fs b/src/fsharp/FSharp.Core/async.fs index 6fb92fe5c1d..6afa26489de 100644 --- a/src/fsharp/FSharp.Core/async.fs +++ b/src/fsharp/FSharp.Core/async.fs @@ -156,27 +156,45 @@ namespace Microsoft.FSharp.Control assert storedExnCont.IsNone storedExnCont <- Some action - type TrampolineHolder() as this = + type TrampolineHolder() = let mutable trampoline = null - // Preallocate this delegate and keep it in the trampoline holder. - let sendOrPostCallbackWithTrampoline = - SendOrPostCallback (fun o -> - let f = unbox AsyncReturn> o - // Reminder: the ignore below ignores an AsyncReturn. - this.ExecuteWithTrampoline f |> ignore) - - // Preallocate this delegate and keep it in the trampoline holder. - let waitCallbackForQueueWorkItemWithTrampoline = - WaitCallback (fun o -> - let f = unbox AsyncReturn> o - this.ExecuteWithTrampoline f |> ignore) - - // Preallocate this delegate and keep it in the trampoline holder. - let threadStartCallbackForStartThreadWithTrampoline = - ParameterizedThreadStart (fun o -> - let f = unbox AsyncReturn> o - this.ExecuteWithTrampoline f |> ignore) + // On-demand allocate this delegate and keep it in the trampoline holder. + let mutable sendOrPostCallbackWithTrampoline : SendOrPostCallback = null + let getSendOrPostCallbackWithTrampoline(this: TrampolineHolder) = + match sendOrPostCallbackWithTrampoline with + | null -> + sendOrPostCallbackWithTrampoline <- + SendOrPostCallback (fun o -> + let f = unbox AsyncReturn> o + // Reminder: the ignore below ignores an AsyncReturn. + this.ExecuteWithTrampoline f |> ignore) + | _ -> () + sendOrPostCallbackWithTrampoline + + // On-demand allocate this delegate and keep it in the trampoline holder. + let mutable waitCallbackForQueueWorkItemWithTrampoline : WaitCallback = null + let getWaitCallbackForQueueWorkItemWithTrampoline(this: TrampolineHolder) = + match waitCallbackForQueueWorkItemWithTrampoline with + | null -> + waitCallbackForQueueWorkItemWithTrampoline <- + WaitCallback (fun o -> + let f = unbox AsyncReturn> o + this.ExecuteWithTrampoline f |> ignore) + | _ -> () + waitCallbackForQueueWorkItemWithTrampoline + + // On-demand allocate this delegate and keep it in the trampoline holder. + let mutable threadStartCallbackForStartThreadWithTrampoline : ParameterizedThreadStart = null + let getThreadStartCallbackForStartThreadWithTrampoline(this: TrampolineHolder) = + match threadStartCallbackForStartThreadWithTrampoline with + | null -> + threadStartCallbackForStartThreadWithTrampoline <- + ParameterizedThreadStart (fun o -> + let f = unbox AsyncReturn> o + this.ExecuteWithTrampoline f |> ignore) + | _ -> () + threadStartCallbackForStartThreadWithTrampoline /// Execute an async computation after installing a trampoline on its synchronous stack. [] @@ -184,12 +202,12 @@ namespace Microsoft.FSharp.Control trampoline <- Trampoline() trampoline.Execute firstAction - member _.PostWithTrampoline (syncCtxt: SynchronizationContext) (f: unit -> AsyncReturn) = - syncCtxt.Post (sendOrPostCallbackWithTrampoline, state=(f |> box)) + member this.PostWithTrampoline (syncCtxt: SynchronizationContext) (f: unit -> AsyncReturn) = + syncCtxt.Post (getSendOrPostCallbackWithTrampoline(this), state=(f |> box)) AsyncReturn.Fake() - member _.QueueWorkItemWithTrampoline (f: unit -> AsyncReturn) = - if not (ThreadPool.QueueUserWorkItem(waitCallbackForQueueWorkItemWithTrampoline, f |> box)) then + member this.QueueWorkItemWithTrampoline (f: unit -> AsyncReturn) = + if not (ThreadPool.QueueUserWorkItem(getWaitCallbackForQueueWorkItemWithTrampoline(this), f |> box)) then failwith "failed to queue user work item" AsyncReturn.Fake() @@ -199,8 +217,8 @@ namespace Microsoft.FSharp.Control | _ -> this.PostWithTrampoline syncCtxt f // This should be the only call to Thread.Start in this library. We must always install a trampoline. - member _.StartThreadWithTrampoline (f: unit -> AsyncReturn) = - Thread(threadStartCallbackForStartThreadWithTrampoline, IsBackground=true).Start(f|>box) + member this.StartThreadWithTrampoline (f: unit -> AsyncReturn) = + Thread(getThreadStartCallbackForStartThreadWithTrampoline(this), IsBackground=true).Start(f|>box) AsyncReturn.Fake() /// Save the exception continuation during propagation of an exception, or prior to raising an exception @@ -287,18 +305,26 @@ namespace Microsoft.FSharp.Control contents.aux.ccont (OperationCanceledException (contents.aux.token)) /// Check for trampoline hijacking. - member inline _.HijackCheckThenCall cont arg = - contents.aux.trampolineHolder.HijackCheckThenCall cont arg + // Note, this must make tailcalls, so may not be an instance member taking a byref argument, + /// nor call any members taking byref arguments. + static member inline HijackCheckThenCall (ctxt: AsyncActivation<'T>) cont arg = + ctxt.aux.trampolineHolder.HijackCheckThenCall cont arg /// Call the success continuation of the asynchronous execution context after checking for /// cancellation and trampoline hijacking. // - Cancellation check // - Hijack check - member ctxt.OnSuccess result = + // + // Note, this must make tailcalls, so may not be an instance member taking a byref argument. + static member Success (ctxt: AsyncActivation<'T>) result = if ctxt.IsCancellationRequested then ctxt.OnCancellation () else - ctxt.HijackCheckThenCall ctxt.cont result + AsyncActivation<'T>.HijackCheckThenCall ctxt ctxt.cont result + + // For backwards API Compat + [] + member ctxt.OnSuccess (result: 'T) = AsyncActivation<'T>.Success ctxt result /// Save the exception continuation during propagation of an exception, or prior to raising an exception member _.OnExceptionRaised() = @@ -381,7 +407,7 @@ namespace Microsoft.FSharp.Control // Note: direct calls to this function may end up in user assemblies via inlining [] let Invoke (computation: Async<'T>) (ctxt: AsyncActivation<_>) : AsyncReturn = - ctxt.HijackCheckThenCall computation.Invoke ctxt + AsyncActivation<'T>.HijackCheckThenCall ctxt computation.Invoke ctxt /// Apply 'userCode' to 'arg'. If no exception is raised then call the normal continuation. Used to implement /// 'finally' and 'when cancelled'. @@ -401,7 +427,7 @@ namespace Microsoft.FSharp.Control ctxt.OnExceptionRaised() if ok then - ctxt.HijackCheckThenCall ctxt.cont result + AsyncActivation<'T>.HijackCheckThenCall ctxt ctxt.cont result else fake() @@ -466,7 +492,7 @@ namespace Microsoft.FSharp.Control if ok then match resOpt with | None -> - ctxt.HijackCheckThenCall ctxt.econt edi + AsyncActivation<'T>.HijackCheckThenCall ctxt ctxt.econt edi | Some res -> Invoke res ctxt else @@ -569,7 +595,7 @@ namespace Microsoft.FSharp.Control /// - Hijack check (see OnSuccess) let inline CreateReturnAsync res = // Note: this code ends up in user assemblies via inlining - MakeAsync (fun ctxt -> ctxt.OnSuccess res) + MakeAsync (fun ctxt -> AsyncActivation.Success ctxt res) /// Runs the first process, takes its result, applies f and then runs the new process produced. /// - Initial cancellation check (see Bind) diff --git a/src/fsharp/FSharp.Core/async.fsi b/src/fsharp/FSharp.Core/async.fsi index a49c75d8ec2..4f9f765bf6f 100644 --- a/src/fsharp/FSharp.Core/async.fsi +++ b/src/fsharp/FSharp.Core/async.fsi @@ -622,7 +622,12 @@ namespace Microsoft.FSharp.Control /// The F# compiler emits calls to this function to implement F# async expressions. /// /// A value indicating asynchronous execution. - member OnSuccess: 'T -> AsyncReturn + static member Success: AsyncActivation<'T> -> result: 'T -> AsyncReturn + + /// The F# compiler emits calls to this function to implement F# async expressions. + /// + /// A value indicating asynchronous execution. + member OnSuccess: result: 'T -> AsyncReturn /// The F# compiler emits calls to this function to implement F# async expressions. member OnExceptionRaised: unit -> unit diff --git a/src/fsharp/IlxGen.fs b/src/fsharp/IlxGen.fs index c6cfd777215..98547b3dba8 100644 --- a/src/fsharp/IlxGen.fs +++ b/src/fsharp/IlxGen.fs @@ -3418,7 +3418,7 @@ and GenApp (cenv: cenv) cgbuf eenv (f, fty, tyargs, curriedArgs, m) sequel = // For instance method calls chop off some type arguments, which are already // carried by the class. Also work out if it's a virtual call. - let _, virtualCall, newobj, isSuperInit, isSelfInit, _, _, _ = GetMemberCallInfo g (vref, valUseFlags) + let _, virtualCall, newobj, isSuperInit, isSelfInit, takesInstanceArg, _, _ = GetMemberCallInfo g (vref, valUseFlags) // numEnclILTypeArgs will include unit-of-measure args, unfortunately. For now, just cut-and-paste code from GetMemberCallInfo // @REVIEW: refactor this @@ -3450,7 +3450,8 @@ and GenApp (cenv: cenv) cgbuf eenv (f, fty, tyargs, curriedArgs, m) sequel = let isDllImport = IsValRefIsDllImport g vref let hasByrefArg = mspec.FormalArgTypes |> List.exists (function ILType.Byref _ -> true | _ -> false) let makesNoCriticalTailcalls = vref.MakesNoCriticalTailcalls - CanTailcall((boxity=AsValue), ccallInfo, eenv.withinSEH, hasByrefArg, mustGenerateUnitAfterCall, isDllImport, isSelfInit, makesNoCriticalTailcalls, sequel) + let hasStructObjArg = (boxity=AsValue) && takesInstanceArg + CanTailcall(hasStructObjArg, ccallInfo, eenv.withinSEH, hasByrefArg, mustGenerateUnitAfterCall, isDllImport, isSelfInit, makesNoCriticalTailcalls, sequel) else Normalcall @@ -4196,7 +4197,8 @@ and GenILCall cenv cgbuf eenv (virt, valu, newobj, valUseFlags, isDllImport, ilM let boxity = (if valu then AsValue else AsObject) let mustGenerateUnitAfterCall = isNil returnTys let makesNoCriticalTailcalls = (newobj || not virt) // Don't tailcall for 'newobj', or 'call' to IL code - let tail = CanTailcall(valu, ccallInfo, eenv.withinSEH, hasByrefArg, mustGenerateUnitAfterCall, isDllImport, false, makesNoCriticalTailcalls, sequel) + let hasStructObjArg = valu && ilMethRef.CallingConv.IsInstance + let tail = CanTailcall(hasStructObjArg, ccallInfo, eenv.withinSEH, hasByrefArg, mustGenerateUnitAfterCall, isDllImport, false, makesNoCriticalTailcalls, sequel) let ilEnclArgTys = GenTypeArgs cenv.amap m eenv.tyenv enclArgTys let ilMethArgTys = GenTypeArgs cenv.amap m eenv.tyenv methArgTys diff --git a/src/scripts/scriptlib.fsx b/src/scripts/scriptlib.fsx index 0cf23b4b295..ea49f9a44db 100644 --- a/src/scripts/scriptlib.fsx +++ b/src/scripts/scriptlib.fsx @@ -77,7 +77,6 @@ module Scripting = if Directory.Exists output then Directory.Delete(output, true) - let log format = printfn format type FilePath = string diff --git a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/noframework.fs b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/noframework.fs index e52b1f858d3..6896ac69cf8 100644 --- a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/noframework.fs +++ b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/noframework.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.CompilerOptions.fsc open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module noframework = diff --git a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/platform.fs b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/platform.fs index 74dd2b054bd..3b5950cf382 100644 --- a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/platform.fs +++ b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/platform.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.CompilerOptions.fsc open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module platform = diff --git a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/times.fs b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/times.fs index 229b1ecf773..37d7ac658ef 100644 --- a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/times.fs +++ b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/times.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.CompilerOptions.fsc open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module times = diff --git a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warn.fs b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warn.fs index 764bed584e4..48061544e8b 100644 --- a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warn.fs +++ b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warn.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.CompilerOptions.fsc open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module warn = diff --git a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warnon.fs b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warnon.fs index 7200cb0a15d..194c2036e07 100644 --- a/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warnon.fs +++ b/tests/FSharp.Compiler.ComponentTests/CompilerOptions/fsc/warnon.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.CompilerOptions.fsc open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module warnon = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/RecordTypes.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/RecordTypes.fs index 14f887532ec..ec1f6a722c7 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/RecordTypes.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/RecordTypes.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.BasicTypeAndModuleDefinitions open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module RecordTypes = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/UnionTypes.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/UnionTypes.fs index fb70f58977f..d2ee6687619 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/UnionTypes.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/BasicTypeAndModuleDefinitions/UnionTypes.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.BasicTypeAndModuleDefinitions open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module UnionTypes = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/LetBindings/TypeFunctions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/LetBindings/TypeFunctions.fs index 1ec68ea6bf5..d21051f8613 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/LetBindings/TypeFunctions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/LetBindings/TypeFunctions.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.DeclarationElements.LetBindings open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module TypeFunctions = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/LetBindings/UseBindings.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/LetBindings/UseBindings.fs index 7cabf8b5e20..05aebe01310 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/LetBindings/UseBindings.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/DeclarationElements/LetBindings/UseBindings.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.DeclarationElements.LetBindings open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module UseBindings = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ApplicationExpressions/BasicApplication.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ApplicationExpressions/BasicApplication.fs index e1022ab2d42..e6b97128784 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ApplicationExpressions/BasicApplication.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ApplicationExpressions/BasicApplication.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.Expressions.ApplicationExpressions open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module BasicApplication = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ControlFlowExpressions/PatternMatching.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ControlFlowExpressions/PatternMatching.fs index ad453ce8e4a..aac0747b6f2 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ControlFlowExpressions/PatternMatching.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ControlFlowExpressions/PatternMatching.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.Expressions.ControlFlowExpressions open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module PatternMatching = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ControlFlowExpressions/SequenceIteration.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ControlFlowExpressions/SequenceIteration.fs index f78d51c0399..6c02b2e15c3 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ControlFlowExpressions/SequenceIteration.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/ControlFlowExpressions/SequenceIteration.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.Expressions.ControlFlowExpressions open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module SequenceIteration = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/Type-relatedExpressions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/Type-relatedExpressions.fs index 4887c3bdec8..374e6b49797 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/Type-relatedExpressions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/Expressions/Type-relatedExpressions.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.Expressions open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module TyperelatedExpressions = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/RecursiveSafetyAnalysis.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/RecursiveSafetyAnalysis.fs index 9e62e06049e..8a3c6ca0924 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/RecursiveSafetyAnalysis.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/InferenceProcedures/RecursiveSafetyAnalysis.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.InferenceProcedures open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module RecursiveSafetyAnalysis = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/Comments.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/Comments.fs index 534315b52f7..0410f5cc3e4 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/Comments.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/Comments.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.LexicalAnalysis open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module Comments = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/NumericLiterals.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/NumericLiterals.fs index 8139f26d2e6..6d654432ec5 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/NumericLiterals.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/NumericLiterals.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.LexicalAnalysis open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module NumericLiterals = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/Shift/Generics.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/Shift/Generics.fs index 8d9462dcf60..1196518ca07 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/Shift/Generics.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/Shift/Generics.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.LexicalAnalysis.Shift open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module Generics = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicKeywords.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicKeywords.fs index b73275378c7..0c4095e15fa 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicKeywords.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicKeywords.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.LexicalAnalysis open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module SymbolicKeywords = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicOperators.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicOperators.fs index 948fdfe463b..1c9eccdf010 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicOperators.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalAnalysis/SymbolicOperators.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.LexicalAnalysis open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module SymbolicOperators = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs index 1ca4583fa3b..343bf9278b7 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/Basic/OffsideExceptions.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.LexicalFiltering.Basic open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module OffsideExceptions = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/HashLight.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/HashLight.fs index 4c1e90115eb..1d1b1b0c821 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/HashLight.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/HashLight.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.LexicalFiltering open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module HashLight = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/HighPrecedenceApplication.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/HighPrecedenceApplication.fs index 191f4ef6201..738aa01e10c 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/HighPrecedenceApplication.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/LexicalFiltering/HighPrecedenceApplication.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.LexicalFiltering open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module HighPrecedenceApplication = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ExplicitObjectConstructors.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ExplicitObjectConstructors.fs index 1ed2ce05d71..72cc5fdf664 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ExplicitObjectConstructors.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ExplicitObjectConstructors.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.ObjectOrientedTypeDefinitions.ClassTypes open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module ExplicitObjectConstructors = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ImplicitObjectConstructors.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ImplicitObjectConstructors.fs index a5e58a018ea..a8e9cd50045 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ImplicitObjectConstructors.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ImplicitObjectConstructors.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.ObjectOrientedTypeDefinitions.ClassTypes open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module ImplicitObjectConstructors = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ValueRestriction.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ValueRestriction.fs index e1cc954cf6a..de513935d5c 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ValueRestriction.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/ClassTypes/ValueRestriction.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.ObjectOrientedTypeDefinitions.ClassTypes open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module ValueRestriction = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/StructTypes.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/StructTypes.fs index ae5cdb74226..03b071572ef 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/StructTypes.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/ObjectOrientedTypeDefinitions/StructTypes.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.ObjectOrientedTypeDefinitions open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module StructTypes = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/PatternMatching/Simple.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/PatternMatching/Simple.fs index 62eeaf555f7..1f98b0a96dd 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/PatternMatching/Simple.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/PatternMatching/Simple.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.PatternMatching open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module Simple = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/CheckingSyntacticTypes.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/CheckingSyntacticTypes.fs index ab45cbb081c..e6813ecf1b6 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/CheckingSyntacticTypes.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/CheckingSyntacticTypes.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.TypesAndTypeConstraints open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module CheckingSyntacticTypes = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/LogicalPropertiesOfTypes.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/LogicalPropertiesOfTypes.fs index a69052c3e6a..ddf8f623d94 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/LogicalPropertiesOfTypes.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/TypesAndTypeConstraints/LogicalPropertiesOfTypes.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.TypesAndTypeConstraints open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module LogicalPropertiesOfTypes = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Basic.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Basic.fs index b4d3a58d83c..a926fc8f133 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Basic.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Basic.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.UnitsOfMeasure open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module Basic = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Diagnostics.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Diagnostics.fs index cf9582618c3..e0ae16cf126 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Diagnostics.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Diagnostics.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.UnitsOfMeasure open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module Diagnostics = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Parsing.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Parsing.fs index d6e0ac1617d..c4a4596685b 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Parsing.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/Parsing.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.UnitsOfMeasure open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module Parsing = diff --git a/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/TypeChecker.fs b/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/TypeChecker.fs index 9c265230fcf..8b3d372a796 100644 --- a/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/TypeChecker.fs +++ b/tests/FSharp.Compiler.ComponentTests/Conformance/UnitsOfMeasure/TypeChecker.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Conformance.UnitsOfMeasure open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module TypeChecker = diff --git a/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/MemberConstraints.fs b/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/MemberConstraints.fs index fdb999aae65..91fe1591534 100644 --- a/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/MemberConstraints.fs +++ b/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/MemberConstraints.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ConstraintSolver open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module MemberConstraints = diff --git a/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/PrimitiveConstraints.fs b/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/PrimitiveConstraints.fs index a366074e20a..cf1a6723694 100644 --- a/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/PrimitiveConstraints.fs +++ b/tests/FSharp.Compiler.ComponentTests/ConstraintSolver/PrimitiveConstraints.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.ConstraintSolver open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module PrimitiveConstraints = diff --git a/tests/FSharp.Compiler.ComponentTests/Diagnostics/General.fs b/tests/FSharp.Compiler.ComponentTests/Diagnostics/General.fs index 0502e22328b..295204c1cea 100644 --- a/tests/FSharp.Compiler.ComponentTests/Diagnostics/General.fs +++ b/tests/FSharp.Compiler.ComponentTests/Diagnostics/General.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Diagnostics open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module General = diff --git a/tests/FSharp.Compiler.ComponentTests/Diagnostics/async.fs b/tests/FSharp.Compiler.ComponentTests/Diagnostics/async.fs index 4990302b72f..d868564e980 100644 --- a/tests/FSharp.Compiler.ComponentTests/Diagnostics/async.fs +++ b/tests/FSharp.Compiler.ComponentTests/Diagnostics/async.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.Diagnostics open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module async = diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Literals.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Literals.fs index 880c131a194..40092066b38 100644 --- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Literals.fs +++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Literals.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.EmittedIL open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Literals`` = diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Misc.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Misc.fs index 88410a24e11..e54703e961d 100644 --- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Misc.fs +++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Misc.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.EmittedIL open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Misc`` = [] diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Operators.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Operators.fs index d642f5e8566..a0224fad564 100644 --- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/Operators.fs +++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/Operators.fs @@ -2,8 +2,8 @@ namespace FSharp.Compiler.ComponentTests.EmittedIL open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module Operators = diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SkipLocalsInit.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SkipLocalsInit.fs index cd484f2cfe7..d544eb3298c 100644 --- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/SkipLocalsInit.fs +++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/SkipLocalsInit.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.EmittedIL open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler #if NETCOREAPP module ``SkipLocalsInit`` = diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/StringFormatAndInterpolation.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/StringFormatAndInterpolation.fs index 716568cf837..9734e06935b 100644 --- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/StringFormatAndInterpolation.fs +++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/StringFormatAndInterpolation.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.EmittedIL open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``StringFormatAndInterpolation`` = [] diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/TailCalls.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/TailCalls.fs index e52d32d4ad5..2e37d06e92a 100644 --- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/TailCalls.fs +++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/TailCalls.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.EmittedIL open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Tail Calls`` = // Regression test for DevDiv:72571 diff --git a/tests/FSharp.Compiler.ComponentTests/EmittedIL/TupleElimination.fs b/tests/FSharp.Compiler.ComponentTests/EmittedIL/TupleElimination.fs index a83e71a1960..38a86274de6 100644 --- a/tests/FSharp.Compiler.ComponentTests/EmittedIL/TupleElimination.fs +++ b/tests/FSharp.Compiler.ComponentTests/EmittedIL/TupleElimination.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.EmittedIL open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``TupleElimination`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/AccessOfTypeAbbreviationTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/AccessOfTypeAbbreviationTests.fs index 623244da2f5..758ef242087 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/AccessOfTypeAbbreviationTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/AccessOfTypeAbbreviationTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler open FSharp.Compiler.Diagnostics module ``Access Of Type Abbreviation`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/AssignmentErrorTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/AssignmentErrorTests.fs index dd986cf5009..cd7265df829 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/AssignmentErrorTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/AssignmentErrorTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Errors assigning to mutable objects`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ClassesTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ClassesTests.fs index e1941a3d7eb..11e2efef68a 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ClassesTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ClassesTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Classes`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ConfusingTypeName.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ConfusingTypeName.fs index 4e56519ffa6..3bdd41b9795 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ConfusingTypeName.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ConfusingTypeName.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Confusing Type Name`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ConstructorTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ConstructorTests.fs index 5b0c17da33e..2c591762443 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ConstructorTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ConstructorTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Constructor`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/DontSuggestTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/DontSuggestTests.fs index d1511da554c..c65b02db61f 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/DontSuggestTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/DontSuggestTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Don't Suggest`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ElseBranchHasWrongTypeTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ElseBranchHasWrongTypeTests.fs index 7cbb911248e..250fc8f674b 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ElseBranchHasWrongTypeTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ElseBranchHasWrongTypeTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Else branch has wrong type`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidLiteralTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidLiteralTests.fs index fb44f2b717b..bf6630b4313 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidLiteralTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidLiteralTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Invalid literals`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidNumericLiteralTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidNumericLiteralTests.fs index caf05fb29e6..90cf5dd9db1 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidNumericLiteralTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/InvalidNumericLiteralTests.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities -open FSharp.Test.Utilities.Compiler +open FSharp.Test +open FSharp.Test.Compiler open FSharp.Compiler.Diagnostics open FSharp.Compiler.AbstractIL diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/MissingElseBranch.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/MissingElseBranch.fs index 07a40b5c9a0..ca414c212b5 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/MissingElseBranch.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/MissingElseBranch.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Else branch is missing`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/MissingExpressionTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/MissingExpressionTests.fs index f91d8b3d683..ec18fb6152d 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/MissingExpressionTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/MissingExpressionTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Missing Expression`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ModuleTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ModuleTests.fs index f96f59a9ce2..f664c614de0 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ModuleTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/ModuleTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module Modules = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/NameResolutionTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/NameResolutionTests.fs index 016bbdcadce..74f62a1c3be 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/NameResolutionTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/NameResolutionTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module NameResolutionTests = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/SuggestionsTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/SuggestionsTests.fs index abdc7b92ca1..85a5dbf6dbb 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/SuggestionsTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/SuggestionsTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module Suggestions = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TypeEqualsMissingTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TypeEqualsMissingTests.fs index 63a16ff2a71..3dacfbfde6e 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TypeEqualsMissingTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TypeEqualsMissingTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TypeMismatchTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TypeMismatchTests.fs index 0d2d1152c88..4326a4a2a3d 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TypeMismatchTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/TypeMismatchTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Type Mismatch`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnitGenericAbstactType.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnitGenericAbstactType.fs index 2b244e12150..1591220d021 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnitGenericAbstactType.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnitGenericAbstactType.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Unit generic abstract Type`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnsupportedAttributes.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnsupportedAttributes.fs index ed112bac76c..439b0bd7bdb 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnsupportedAttributes.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UnsupportedAttributes.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages #if NETCOREAPP open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Unsupported Attributes`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UpcastDowncastTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UpcastDowncastTests.fs index 61fcaadf12d..e336d7b10aa 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UpcastDowncastTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/UpcastDowncastTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Upcast and Downcast`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/WarnExpressionTests.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/WarnExpressionTests.fs index 1380869d383..3e7768efb94 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/WarnExpressionTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/WarnExpressionTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Warn Expression`` = diff --git a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/WrongSyntaxInForLoop.fs b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/WrongSyntaxInForLoop.fs index 89e3707c243..037624160a1 100644 --- a/tests/FSharp.Compiler.ComponentTests/ErrorMessages/WrongSyntaxInForLoop.fs +++ b/tests/FSharp.Compiler.ComponentTests/ErrorMessages/WrongSyntaxInForLoop.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.ErrorMessages open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Wrong syntax in for loop`` = diff --git a/tests/FSharp.Compiler.ComponentTests/Interop/SimpleInteropTests.fs b/tests/FSharp.Compiler.ComponentTests/Interop/SimpleInteropTests.fs index 2d1b2e0fcb9..a2a018a64bb 100644 --- a/tests/FSharp.Compiler.ComponentTests/Interop/SimpleInteropTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Interop/SimpleInteropTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.Interop open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Simple interop verification`` = diff --git a/tests/FSharp.Compiler.ComponentTests/Interop/VisibilityTests.fs b/tests/FSharp.Compiler.ComponentTests/Interop/VisibilityTests.fs index 4563644abd6..ab6425d2052 100644 --- a/tests/FSharp.Compiler.ComponentTests/Interop/VisibilityTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Interop/VisibilityTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.ComponentTests.Interop open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Verify visibility of properties`` = diff --git a/tests/FSharp.Compiler.ComponentTests/Language/AttributeCheckingTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/AttributeCheckingTests.fs index 20b75ea9a36..7b94f335e58 100644 --- a/tests/FSharp.Compiler.ComponentTests/Language/AttributeCheckingTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Language/AttributeCheckingTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.AttributeChecking open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module AttributeCheckingTests = diff --git a/tests/FSharp.Compiler.ComponentTests/Language/CastingTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/CastingTests.fs index eea1385a6ae..c85c571d0fe 100644 --- a/tests/FSharp.Compiler.ComponentTests/Language/CastingTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Language/CastingTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module CastingTests = diff --git a/tests/FSharp.Compiler.ComponentTests/Language/CodeQuotationTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/CodeQuotationTests.fs index ca49fdfa13b..45ab0678529 100644 --- a/tests/FSharp.Compiler.ComponentTests/Language/CodeQuotationTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Language/CodeQuotationTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.Language open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler open FSharp.Quotations.Patterns module CodeQuotationsTests = diff --git a/tests/FSharp.Compiler.ComponentTests/Language/CompilerDirectiveTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/CompilerDirectiveTests.fs index 0237a6d4d83..362e6f06c6c 100644 --- a/tests/FSharp.Compiler.ComponentTests/Language/CompilerDirectiveTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Language/CompilerDirectiveTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.Language open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Test Compiler Directives`` = diff --git a/tests/FSharp.Compiler.ComponentTests/Language/ComputationExpressionTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/ComputationExpressionTests.fs index 95f036d4ca2..52a4ccabe4c 100644 --- a/tests/FSharp.Compiler.ComponentTests/Language/ComputationExpressionTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Language/ComputationExpressionTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.Language open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ComputationExpressionTests = [] diff --git a/tests/FSharp.Compiler.ComponentTests/Language/RegressionTests.fs b/tests/FSharp.Compiler.ComponentTests/Language/RegressionTests.fs index 4e878fddae5..81e55158788 100644 --- a/tests/FSharp.Compiler.ComponentTests/Language/RegressionTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/Language/RegressionTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.Language open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module RegressionTests = diff --git a/tests/FSharp.Compiler.ComponentTests/Language/XmlComments.fs b/tests/FSharp.Compiler.ComponentTests/Language/XmlComments.fs index c1caf715618..fc554d1fcc9 100644 --- a/tests/FSharp.Compiler.ComponentTests/Language/XmlComments.fs +++ b/tests/FSharp.Compiler.ComponentTests/Language/XmlComments.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.XmlComments open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module XmlCommentChecking = diff --git a/tests/FSharp.Compiler.ComponentTests/OCamlCompat/OCamlCompat.fs b/tests/FSharp.Compiler.ComponentTests/OCamlCompat/OCamlCompat.fs index 774d2085b1f..86c45c9556e 100644 --- a/tests/FSharp.Compiler.ComponentTests/OCamlCompat/OCamlCompat.fs +++ b/tests/FSharp.Compiler.ComponentTests/OCamlCompat/OCamlCompat.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.OCamlCompat open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module OCamlCompat = diff --git a/tests/FSharp.Compiler.ComponentTests/Scripting/Interactive.fs b/tests/FSharp.Compiler.ComponentTests/Scripting/Interactive.fs index a1eb8fa8842..efdd5918cb4 100644 --- a/tests/FSharp.Compiler.ComponentTests/Scripting/Interactive.fs +++ b/tests/FSharp.Compiler.ComponentTests/Scripting/Interactive.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.ComponentTests.Scripting open Xunit -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler module ``Interactive tests`` = [] diff --git a/tests/FSharp.Compiler.ComponentTests/TypeChecks/CheckDeclarationsTests.fs b/tests/FSharp.Compiler.ComponentTests/TypeChecks/CheckDeclarationsTests.fs index 9330c00748a..636c9d31ddd 100644 --- a/tests/FSharp.Compiler.ComponentTests/TypeChecks/CheckDeclarationsTests.fs +++ b/tests/FSharp.Compiler.ComponentTests/TypeChecks/CheckDeclarationsTests.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.ComponentTests.CheckDeclarationsTests open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module CheckDeclarationsTests = diff --git a/tests/FSharp.Compiler.UnitTests/AssemblySigningAttributes.fs b/tests/FSharp.Compiler.UnitTests/AssemblySigningAttributes.fs index 450c3b771de..333dd3c6a9a 100644 --- a/tests/FSharp.Compiler.UnitTests/AssemblySigningAttributes.fs +++ b/tests/FSharp.Compiler.UnitTests/AssemblySigningAttributes.fs @@ -3,9 +3,9 @@ namespace FSharp.Compiler.UnitTests open Xunit -open FSharp.Test.Utilities.Compiler -open FSharp.Test.Utilities.Xunit.Attributes -open FSharp.Test.Utilities +open FSharp.Test +open FSharp.Test.Compiler +open FSharp.Test.Xunit.Attributes module AssemblySigning = diff --git a/tests/FSharp.Compiler.UnitTests/BlockTests.fs b/tests/FSharp.Compiler.UnitTests/BlockTests.fs index e4f4bdd29fd..08a718f5244 100644 --- a/tests/FSharp.Compiler.UnitTests/BlockTests.fs +++ b/tests/FSharp.Compiler.UnitTests/BlockTests.fs @@ -2,7 +2,7 @@ namespace FSharp.Compiler.UnitTests open Xunit -open FSharp.Test.Utilities +open FSharp.Test open Internal.Utilities.Library module BlockTests = diff --git a/tests/FSharp.Compiler.UnitTests/BuildGraphTests.fs b/tests/FSharp.Compiler.UnitTests/BuildGraphTests.fs index fdcf8dfda9a..ae2aeff2071 100644 --- a/tests/FSharp.Compiler.UnitTests/BuildGraphTests.fs +++ b/tests/FSharp.Compiler.UnitTests/BuildGraphTests.fs @@ -5,7 +5,8 @@ open System open System.Threading open System.Runtime.CompilerServices open Xunit -open FSharp.Test.Utilities +open FSharp.Test +open FSharp.Test.Compiler open FSharp.Compiler.BuildGraph open Internal.Utilities.Library diff --git a/tests/FSharp.Compiler.UnitTests/ByteMemoryTests.fs b/tests/FSharp.Compiler.UnitTests/ByteMemoryTests.fs index 70653ed68fb..6a46f5ce74f 100644 --- a/tests/FSharp.Compiler.UnitTests/ByteMemoryTests.fs +++ b/tests/FSharp.Compiler.UnitTests/ByteMemoryTests.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open System open System.Globalization open Xunit -open FSharp.Test.Utilities +open FSharp.Test module ByteMemoryTests = open FSharp.Compiler.IO diff --git a/tests/FSharp.Compiler.UnitTests/EditDistance.fs b/tests/FSharp.Compiler.UnitTests/EditDistance.fs index fa56c64d2d4..1e00cc05935 100644 --- a/tests/FSharp.Compiler.UnitTests/EditDistance.fs +++ b/tests/FSharp.Compiler.UnitTests/EditDistance.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open System open System.Globalization open Xunit -open FSharp.Test.Utilities +open FSharp.Test module EditDistance = open Internal.Utilities.EditDistance diff --git a/tests/FSharp.Compiler.UnitTests/FsiTests.fs b/tests/FSharp.Compiler.UnitTests/FsiTests.fs index 2388a56a4bb..a19e329843e 100644 --- a/tests/FSharp.Compiler.UnitTests/FsiTests.fs +++ b/tests/FSharp.Compiler.UnitTests/FsiTests.fs @@ -3,7 +3,7 @@ open System open System.IO open FSharp.Compiler.Interactive.Shell open Xunit -open FSharp.Test.Utilities +open FSharp.Test [] module FsiTests = diff --git a/tests/FSharp.Compiler.UnitTests/HashIfExpression.fs b/tests/FSharp.Compiler.UnitTests/HashIfExpression.fs index 039b1c53350..8915d0fbf72 100644 --- a/tests/FSharp.Compiler.UnitTests/HashIfExpression.fs +++ b/tests/FSharp.Compiler.UnitTests/HashIfExpression.fs @@ -6,7 +6,7 @@ open System open System.Text open Xunit -open FSharp.Test.Utilities +open FSharp.Test open Internal.Utilities open Internal.Utilities.Text.Lexing diff --git a/tests/FSharp.Compiler.UnitTests/ManglingNameOfProvidedTypes.fs b/tests/FSharp.Compiler.UnitTests/ManglingNameOfProvidedTypes.fs index 3060590986a..5ccac1bb871 100644 --- a/tests/FSharp.Compiler.UnitTests/ManglingNameOfProvidedTypes.fs +++ b/tests/FSharp.Compiler.UnitTests/ManglingNameOfProvidedTypes.fs @@ -4,6 +4,7 @@ namespace FSharp.Compiler.UnitTests open System open System.Text open Xunit +open FSharp.Test open FSharp.Test.Utilities open FSharp.Compiler.Syntax diff --git a/tests/FSharp.Compiler.UnitTests/ProductVersion.fs b/tests/FSharp.Compiler.UnitTests/ProductVersion.fs index bc91de7a3f4..417f71a3fed 100644 --- a/tests/FSharp.Compiler.UnitTests/ProductVersion.fs +++ b/tests/FSharp.Compiler.UnitTests/ProductVersion.fs @@ -4,7 +4,7 @@ open System open System.IO open System.Text open Xunit -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.AbstractIL.IL open FSharp.Compiler.CreateILModule.MainModuleBuilder diff --git a/tests/FSharp.Compiler.UnitTests/SuggestionBuffer.fs b/tests/FSharp.Compiler.UnitTests/SuggestionBuffer.fs index f7d798a7d1a..7ecadd93209 100644 --- a/tests/FSharp.Compiler.UnitTests/SuggestionBuffer.fs +++ b/tests/FSharp.Compiler.UnitTests/SuggestionBuffer.fs @@ -2,8 +2,7 @@ namespace FSharp.Compiler.UnitTests open Xunit -open FSharp.Test.Utilities - +open FSharp.Test module SuggestionBuffer = open FSharp.Compiler.ErrorResolutionHints diff --git a/tests/FSharp.Core.UnitTests/SurfaceArea.fs b/tests/FSharp.Core.UnitTests/SurfaceArea.fs index 0f1d985de66..d9b71fec864 100644 --- a/tests/FSharp.Core.UnitTests/SurfaceArea.fs +++ b/tests/FSharp.Core.UnitTests/SurfaceArea.fs @@ -513,6 +513,7 @@ Microsoft.FSharp.Control.AsyncActivation`1[T]: Boolean IsCancellationRequested Microsoft.FSharp.Control.AsyncActivation`1[T]: Boolean get_IsCancellationRequested() Microsoft.FSharp.Control.AsyncActivation`1[T]: Microsoft.FSharp.Control.AsyncReturn OnCancellation() Microsoft.FSharp.Control.AsyncActivation`1[T]: Microsoft.FSharp.Control.AsyncReturn OnSuccess(T) +Microsoft.FSharp.Control.AsyncActivation`1[T]: Microsoft.FSharp.Control.AsyncReturn Success(Microsoft.FSharp.Control.AsyncActivation`1[T], T) Microsoft.FSharp.Control.AsyncActivation`1[T]: Void OnExceptionRaised() Microsoft.FSharp.Control.AsyncPrimitives: Microsoft.FSharp.Control.AsyncReturn Bind[T,TResult](Microsoft.FSharp.Control.AsyncActivation`1[T], Microsoft.FSharp.Control.FSharpAsync`1[TResult], Microsoft.FSharp.Core.FSharpFunc`2[TResult,Microsoft.FSharp.Control.FSharpAsync`1[T]]) Microsoft.FSharp.Control.AsyncPrimitives: Microsoft.FSharp.Control.AsyncReturn CallThenInvoke[T,TResult](Microsoft.FSharp.Control.AsyncActivation`1[T], TResult, Microsoft.FSharp.Core.FSharpFunc`2[TResult,Microsoft.FSharp.Control.FSharpAsync`1[T]]) diff --git a/tests/FSharp.Test.Utilities/Assert.fs b/tests/FSharp.Test.Utilities/Assert.fs index 64a4b732160..41af78c735d 100644 --- a/tests/FSharp.Test.Utilities/Assert.fs +++ b/tests/FSharp.Test.Utilities/Assert.fs @@ -1,4 +1,4 @@ -namespace FSharp.Test.Utilities +namespace FSharp.Test module Assert = open FluentAssertions diff --git a/tests/FSharp.Test.Utilities/Compiler.fs b/tests/FSharp.Test.Utilities/Compiler.fs index f5f91523128..e091a389cd9 100644 --- a/tests/FSharp.Test.Utilities/Compiler.fs +++ b/tests/FSharp.Test.Utilities/Compiler.fs @@ -1,13 +1,12 @@ // Copyright (c) Microsoft Corporation. All Rights Reserved. See License.txt in the project root for license information. -namespace FSharp.Test.Utilities +namespace FSharp.Test open FSharp.Compiler.Interactive.Shell open FSharp.Compiler.IO open FSharp.Compiler.Diagnostics +open FSharp.Test.Assert open FSharp.Test.Utilities -open FSharp.Test.Utilities.Assert -open FSharp.Test.Utilities.Utilities open FSharp.Test.ScriptHelpers open Microsoft.CodeAnalysis open Microsoft.CodeAnalysis.CSharp diff --git a/tests/FSharp.Test.Utilities/CompilerAssert.fs b/tests/FSharp.Test.Utilities/CompilerAssert.fs index 5e3001a5145..a3331b19aaf 100644 --- a/tests/FSharp.Test.Utilities/CompilerAssert.fs +++ b/tests/FSharp.Test.Utilities/CompilerAssert.fs @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. All Rights Reserved. See License.txt in the project root for license information. -namespace FSharp.Test.Utilities +namespace FSharp.Test open System open System.IO @@ -15,7 +15,7 @@ open FSharp.Compiler.Text open System.Runtime.Loader #endif open NUnit.Framework -open FSharp.Test.Utilities.Utilities +open FSharp.Test.Utilities open TestFramework [] diff --git a/tests/FSharp.Test.Utilities/ILChecker.fs b/tests/FSharp.Test.Utilities/ILChecker.fs index b6a93197318..c7a65f00ac9 100644 --- a/tests/FSharp.Test.Utilities/ILChecker.fs +++ b/tests/FSharp.Test.Utilities/ILChecker.fs @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. All Rights Reserved. See License.txt in the project root for license information. -namespace FSharp.Test.Utilities +namespace FSharp.Test open System open System.IO diff --git a/tests/FSharp.Test.Utilities/TestFramework.fs b/tests/FSharp.Test.Utilities/TestFramework.fs index efe60a1a41f..f7972d0dc55 100644 --- a/tests/FSharp.Test.Utilities/TestFramework.fs +++ b/tests/FSharp.Test.Utilities/TestFramework.fs @@ -183,7 +183,6 @@ module Commands = Directory.CreateDirectory path |> ignore path - type TestConfig = { EnvironmentVariables : Map CSC : string diff --git a/tests/FSharp.Test.Utilities/Utilities.fs b/tests/FSharp.Test.Utilities/Utilities.fs index 2932dcdeccc..5139e8a0e71 100644 --- a/tests/FSharp.Test.Utilities/Utilities.fs +++ b/tests/FSharp.Test.Utilities/Utilities.fs @@ -1,6 +1,6 @@ // Copyright (c) Microsoft Corporation. All Rights Reserved. See License.txt in the project root for license information. -namespace FSharp.Test.Utilities +namespace FSharp.Test open System open System.IO @@ -10,7 +10,6 @@ open System.Diagnostics open System.Threading.Tasks open Microsoft.CodeAnalysis open Microsoft.CodeAnalysis.CSharp -open FSharp.Test.Utilities open TestFramework open NUnit.Framework @@ -53,6 +52,8 @@ module Utilities = stream.CopyTo(memoryStream) bytes + let inline getTestsDirectory src dir = src ++ dir + let private getOrCreateResource (resource: byref) (name: string) = match resource with | null -> getResourceBlob name diff --git a/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs b/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs index 824c9f22a19..fd3da92c6e5 100644 --- a/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs +++ b/tests/FSharp.Test.Utilities/Xunit/Attributes/DirectoryAttribute.fs @@ -1,4 +1,4 @@ -namespace FSharp.Test.Utilities.Xunit.Attributes +namespace FSharp.Test.Xunit.Attributes open System open System.IO @@ -7,8 +7,8 @@ open Xunit.Sdk open FSharp.Compiler.IO -open FSharp.Test.Utilities -open FSharp.Test.Utilities.Compiler +open FSharp.Test +open FSharp.Test.Compiler /// Attribute to use with Xunit's TheoryAttribute. /// Takes a directory, relative to current test suite's root. diff --git a/tests/fsharp/Compiler/CodeGen/EmittedIL/BooleanLogic.fs b/tests/fsharp/Compiler/CodeGen/EmittedIL/BooleanLogic.fs index 7268da013ee..b5ec522512c 100644 --- a/tests/fsharp/Compiler/CodeGen/EmittedIL/BooleanLogic.fs +++ b/tests/fsharp/Compiler/CodeGen/EmittedIL/BooleanLogic.fs @@ -2,7 +2,7 @@ namespace FSharp.Compiler.UnitTests.CodeGen.EmittedIL -open FSharp.Test.Utilities +open FSharp.Test open NUnit.Framework [] diff --git a/tests/fsharp/Compiler/CodeGen/EmittedIL/CeEdiThrow.fs b/tests/fsharp/Compiler/CodeGen/EmittedIL/CeEdiThrow.fs index 22d6b93df39..33355e4053d 100644 --- a/tests/fsharp/Compiler/CodeGen/EmittedIL/CeEdiThrow.fs +++ b/tests/fsharp/Compiler/CodeGen/EmittedIL/CeEdiThrow.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests.CodeGen.EmittedIL open FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test [] module CeEdiThrow = diff --git a/tests/fsharp/Compiler/CodeGen/EmittedIL/ComputedListExpressions.fs b/tests/fsharp/Compiler/CodeGen/EmittedIL/ComputedListExpressions.fs index 4938f7b2a7e..5db43f3a5b6 100644 --- a/tests/fsharp/Compiler/CodeGen/EmittedIL/ComputedListExpressions.fs +++ b/tests/fsharp/Compiler/CodeGen/EmittedIL/ComputedListExpressions.fs @@ -2,7 +2,7 @@ namespace FSharp.Compiler.UnitTests.CodeGen.EmittedIL -open FSharp.Test.Utilities +open FSharp.Test open NUnit.Framework [] diff --git a/tests/fsharp/Compiler/CodeGen/EmittedIL/Mutation.fs b/tests/fsharp/Compiler/CodeGen/EmittedIL/Mutation.fs index 0a2bac6b626..4bfc4dd5b0e 100644 --- a/tests/fsharp/Compiler/CodeGen/EmittedIL/Mutation.fs +++ b/tests/fsharp/Compiler/CodeGen/EmittedIL/Mutation.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests.CodeGen.EmittedIL open FSharp.Compiler.UnitTests -open FSharp.Test.Utilities +open FSharp.Test open NUnit.Framework [] diff --git a/tests/fsharp/Compiler/CodeGen/EmittedIL/StaticLinkTests.fs b/tests/fsharp/Compiler/CodeGen/EmittedIL/StaticLinkTests.fs index b2a43d8a3f8..e07f0103ee2 100644 --- a/tests/fsharp/Compiler/CodeGen/EmittedIL/StaticLinkTests.fs +++ b/tests/fsharp/Compiler/CodeGen/EmittedIL/StaticLinkTests.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests.CodeGen.EmittedIL open System.IO open System.Reflection -open FSharp.Test.Utilities +open FSharp.Test open NUnit.Framework [] diff --git a/tests/fsharp/Compiler/CodeGen/EmittedIL/StaticMember.fs b/tests/fsharp/Compiler/CodeGen/EmittedIL/StaticMember.fs index 02d3d54d959..b1415c0e929 100644 --- a/tests/fsharp/Compiler/CodeGen/EmittedIL/StaticMember.fs +++ b/tests/fsharp/Compiler/CodeGen/EmittedIL/StaticMember.fs @@ -2,7 +2,7 @@ namespace FSharp.Compiler.UnitTests.CodeGen.EmittedIL -open FSharp.Test.Utilities +open FSharp.Test open NUnit.Framework [] diff --git a/tests/fsharp/Compiler/Conformance/BasicGrammarElements/BasicConstants.fs b/tests/fsharp/Compiler/Conformance/BasicGrammarElements/BasicConstants.fs index 5d7a454dcc0..30b1e1aa4c3 100644 --- a/tests/fsharp/Compiler/Conformance/BasicGrammarElements/BasicConstants.fs +++ b/tests/fsharp/Compiler/Conformance/BasicGrammarElements/BasicConstants.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Conformance/DataExpressions/ComputationExpressions.fs b/tests/fsharp/Compiler/Conformance/DataExpressions/ComputationExpressions.fs index 60b21122a4c..5c1c8796862 100644 --- a/tests/fsharp/Compiler/Conformance/DataExpressions/ComputationExpressions.fs +++ b/tests/fsharp/Compiler/Conformance/DataExpressions/ComputationExpressions.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Infrastructure/AstCompiler.fs b/tests/fsharp/Compiler/Infrastructure/AstCompiler.fs index 40caa07d3c9..8f254fa03d5 100644 --- a/tests/fsharp/Compiler/Infrastructure/AstCompiler.fs +++ b/tests/fsharp/Compiler/Infrastructure/AstCompiler.fs @@ -2,7 +2,7 @@ namespace FSharp.Compiler.UnitTests.AstCompiler -open FSharp.Test.Utilities +open FSharp.Test open NUnit.Framework open System.Reflection diff --git a/tests/fsharp/Compiler/Language/AnonRecordTests.fs b/tests/fsharp/Compiler/Language/AnonRecordTests.fs index 7773afcb45d..fd7535d0079 100644 --- a/tests/fsharp/Compiler/Language/AnonRecordTests.fs +++ b/tests/fsharp/Compiler/Language/AnonRecordTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Language/ByrefTests.fs b/tests/fsharp/Compiler/Language/ByrefTests.fs index ef9fc80aedb..2bb9709a86f 100644 --- a/tests/fsharp/Compiler/Language/ByrefTests.fs +++ b/tests/fsharp/Compiler/Language/ByrefTests.fs @@ -3,12 +3,10 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities -open FSharp.Test.Utilities.Utilities open FSharp.Compiler.Diagnostics +open FSharp.Test open FSharp.Test.Utilities -open FSharp.Test.Utilities.Compiler -open FSharp.Tests +open FSharp.Test.Compiler [] module ByrefTests = diff --git a/tests/fsharp/Compiler/Language/CompilerDirectiveTests.fs b/tests/fsharp/Compiler/Language/CompilerDirectiveTests.fs index 94df44607ef..46160b309bf 100644 --- a/tests/fsharp/Compiler/Language/CompilerDirectiveTests.fs +++ b/tests/fsharp/Compiler/Language/CompilerDirectiveTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Language/ComputationExpressionTests.fs b/tests/fsharp/Compiler/Language/ComputationExpressionTests.fs index b8961030ac0..583c1c31e99 100644 --- a/tests/fsharp/Compiler/Language/ComputationExpressionTests.fs +++ b/tests/fsharp/Compiler/Language/ComputationExpressionTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Language/CustomCollectionTests.fs b/tests/fsharp/Compiler/Language/CustomCollectionTests.fs index 0f02e397952..e5106029ef8 100644 --- a/tests/fsharp/Compiler/Language/CustomCollectionTests.fs +++ b/tests/fsharp/Compiler/Language/CustomCollectionTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Language/DefaultInterfaceMemberTests.fs b/tests/fsharp/Compiler/Language/DefaultInterfaceMemberTests.fs index ec87bfe38dd..fca1e5fd706 100644 --- a/tests/fsharp/Compiler/Language/DefaultInterfaceMemberTests.fs +++ b/tests/fsharp/Compiler/Language/DefaultInterfaceMemberTests.fs @@ -3,8 +3,8 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework +open FSharp.Test open FSharp.Test.Utilities -open FSharp.Test.Utilities.Utilities open FSharp.Compiler.Diagnostics #if NETCOREAPP diff --git a/tests/fsharp/Compiler/Language/FixedIndexSliceTests.fs b/tests/fsharp/Compiler/Language/FixedIndexSliceTests.fs index a9a26f36775..8f1c92f4be7 100644 --- a/tests/fsharp/Compiler/Language/FixedIndexSliceTests.fs +++ b/tests/fsharp/Compiler/Language/FixedIndexSliceTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Language/HatDesugaringTests.fs b/tests/fsharp/Compiler/Language/HatDesugaringTests.fs index 71304dcf5fd..d9f47a9b4b9 100644 --- a/tests/fsharp/Compiler/Language/HatDesugaringTests.fs +++ b/tests/fsharp/Compiler/Language/HatDesugaringTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Language/InitOnlyPropertyConsumptionTests.fs b/tests/fsharp/Compiler/Language/InitOnlyPropertyConsumptionTests.fs index eca26290cec..56d828f8a78 100644 --- a/tests/fsharp/Compiler/Language/InitOnlyPropertyConsumptionTests.fs +++ b/tests/fsharp/Compiler/Language/InitOnlyPropertyConsumptionTests.fs @@ -3,10 +3,9 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities.Compiler +open FSharp.Test +open FSharp.Test.Compiler open FSharp.Test.Utilities -open FSharp.Test.Utilities.Utilities -open FSharp.Tests #if NETCOREAPP diff --git a/tests/fsharp/Compiler/Language/InterfaceTests.fs b/tests/fsharp/Compiler/Language/InterfaceTests.fs index 3a11860f362..231ab11248a 100644 --- a/tests/fsharp/Compiler/Language/InterfaceTests.fs +++ b/tests/fsharp/Compiler/Language/InterfaceTests.fs @@ -6,7 +6,6 @@ open FSharp.Compiler.Diagnostics open NUnit.Framework open FSharp.Test open FSharp.Test.Utilities -open FSharp.Test.Utilities.Utilities [] module InterfaceTests = diff --git a/tests/fsharp/Compiler/Language/OpenTypeDeclarationTests.fs b/tests/fsharp/Compiler/Language/OpenTypeDeclarationTests.fs index 616f4894220..7d04809e436 100644 --- a/tests/fsharp/Compiler/Language/OpenTypeDeclarationTests.fs +++ b/tests/fsharp/Compiler/Language/OpenTypeDeclarationTests.fs @@ -4,10 +4,9 @@ namespace FSharp.Compiler.UnitTests open FSharp.Compiler.Diagnostics open NUnit.Framework +open FSharp.Test open FSharp.Test.Utilities -open FSharp.Test.Utilities.Utilities -open FSharp.Test.Utilities.Compiler -open FSharp.Tests +open FSharp.Test.Compiler [] module OpenTypeDeclarationTests = @@ -2257,7 +2256,7 @@ let main _ = [] let ``Opening type providers with abbreviation result in unqualified access to types and members`` () = - let dir = Core.getTestsDirectory "typeProviders/helloWorld" + let dir = getTestsDirectory __SOURCE_DIRECTORY__ "../../typeProviders/helloWorld" let provider = Fsx (sprintf """ @@ -2299,7 +2298,7 @@ if StaticProperty1 <> "You got a static property" then [] let ``Opening type providers result in unqualified access to types and members`` () = - let dir = Core.getTestsDirectory "typeProviders/helloWorld" + let dir = getTestsDirectory __SOURCE_DIRECTORY__ "../../typeProviders/helloWorld" let provider = Fsx (sprintf """ @@ -2339,7 +2338,7 @@ if StaticProperty1 <> "You got a static property" then [] let ``Opening type providers with nested result in unqualified access to types and members`` () = - let dir = Core.getTestsDirectory "typeProviders/helloWorld" + let dir = getTestsDirectory __SOURCE_DIRECTORY__ "../../typeProviders/helloWorld" let provider = Fsx (sprintf """ @@ -2376,7 +2375,7 @@ if StaticProperty1 <> "You got a static property" then [] let ``Opening generative type providers in unqualified access to types and members`` () = - let dir = Core.getTestsDirectory "typeProviders/helloWorld" + let dir = getTestsDirectory __SOURCE_DIRECTORY__ "../../typeProviders/helloWorld" let provider = Fsx (sprintf """ @@ -2414,7 +2413,7 @@ let _ : TheNestedGeneratedType = Unchecked.defaultof<_> [] let ``Opening generative type providers directly in unqualified access to types and members - Errors`` () = - let dir = Core.getTestsDirectory "typeProviders/helloWorld" + let dir = getTestsDirectory __SOURCE_DIRECTORY__ "../../typeProviders/helloWorld" let provider = Fsx (sprintf """ diff --git a/tests/fsharp/Compiler/Language/OptionalInteropTests.fs b/tests/fsharp/Compiler/Language/OptionalInteropTests.fs index 19d32334850..72fa7ee3b20 100644 --- a/tests/fsharp/Compiler/Language/OptionalInteropTests.fs +++ b/tests/fsharp/Compiler/Language/OptionalInteropTests.fs @@ -4,9 +4,9 @@ namespace FSharp.Compiler.UnitTests open System.Collections.Immutable open NUnit.Framework +open FSharp.Test open FSharp.Test.Utilities -open FSharp.Test.Utilities.Utilities -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler open FSharp.Compiler.Diagnostics open Microsoft.CodeAnalysis diff --git a/tests/fsharp/Compiler/Language/SlicingQuotationTests.fs b/tests/fsharp/Compiler/Language/SlicingQuotationTests.fs index a7d3a889d25..414d562708e 100644 --- a/tests/fsharp/Compiler/Language/SlicingQuotationTests.fs +++ b/tests/fsharp/Compiler/Language/SlicingQuotationTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Language/SpanOptimizationTests.fs b/tests/fsharp/Compiler/Language/SpanOptimizationTests.fs index 64ceb55ec20..1eec3bd3c6b 100644 --- a/tests/fsharp/Compiler/Language/SpanOptimizationTests.fs +++ b/tests/fsharp/Compiler/Language/SpanOptimizationTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test #if NETCOREAPP [] diff --git a/tests/fsharp/Compiler/Language/SpanTests.fs b/tests/fsharp/Compiler/Language/SpanTests.fs index f24036c8664..b7aca91e7f4 100644 --- a/tests/fsharp/Compiler/Language/SpanTests.fs +++ b/tests/fsharp/Compiler/Language/SpanTests.fs @@ -5,7 +5,7 @@ namespace FSharp.Compiler.UnitTests open System open FSharp.Compiler.Diagnostics open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test #if NETCOREAPP [] diff --git a/tests/fsharp/Compiler/Language/StringConcatOptimizationTests.fs b/tests/fsharp/Compiler/Language/StringConcatOptimizationTests.fs index c392e247742..f27b3bdc23f 100644 --- a/tests/fsharp/Compiler/Language/StringConcatOptimizationTests.fs +++ b/tests/fsharp/Compiler/Language/StringConcatOptimizationTests.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open System open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test #if !NETCOREAPP [] diff --git a/tests/fsharp/Compiler/Language/StringInterpolation.fs b/tests/fsharp/Compiler/Language/StringInterpolation.fs index 6d41510b038..be7812ff7c0 100644 --- a/tests/fsharp/Compiler/Language/StringInterpolation.fs +++ b/tests/fsharp/Compiler/Language/StringInterpolation.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework open FSharp.Compiler.Diagnostics -open FSharp.Test.Utilities +open FSharp.Test [] module StringInterpolationTests = diff --git a/tests/fsharp/Compiler/Language/StructActivePatternTests.fs b/tests/fsharp/Compiler/Language/StructActivePatternTests.fs index c4c4162fc9a..6107d368ef9 100644 --- a/tests/fsharp/Compiler/Language/StructActivePatternTests.fs +++ b/tests/fsharp/Compiler/Language/StructActivePatternTests.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework open FSharp.Compiler.Diagnostics -open FSharp.Test.Utilities +open FSharp.Test [] module StructActivePatternTests = diff --git a/tests/fsharp/Compiler/Language/TypeAttributeTests.fs b/tests/fsharp/Compiler/Language/TypeAttributeTests.fs index 27f8584c593..23d09d9e706 100644 --- a/tests/fsharp/Compiler/Language/TypeAttributeTests.fs +++ b/tests/fsharp/Compiler/Language/TypeAttributeTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Language/UIntTests.fs b/tests/fsharp/Compiler/Language/UIntTests.fs index 8d2b6454136..05bf78bbebf 100644 --- a/tests/fsharp/Compiler/Language/UIntTests.fs +++ b/tests/fsharp/Compiler/Language/UIntTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test [] module UIntTests = diff --git a/tests/fsharp/Compiler/Language/WitnessTests.fs b/tests/fsharp/Compiler/Language/WitnessTests.fs index 0d6ce944d67..7ed562bd9a3 100644 --- a/tests/fsharp/Compiler/Language/WitnessTests.fs +++ b/tests/fsharp/Compiler/Language/WitnessTests.fs @@ -3,8 +3,9 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities.Compiler -open FSharp.Tests +open FSharp.Test +open FSharp.Test.Utilities +open FSharp.Test.Compiler #if !NETCOREAPP @@ -13,7 +14,7 @@ module WitnessTests = [] let ``Witness expressions are created as a result of compiling the type provider tests`` () = - let dir = Core.getTestsDirectory "typeProviders/helloWorld" + let dir = getTestsDirectory __SOURCE_DIRECTORY__ "../../typeProviders/helloWorld" Fsx (sprintf """ #load @"%s" """ (dir ++ "provider.fsx")) diff --git a/tests/fsharp/Compiler/Libraries/Core/Collections/ListTests.fs b/tests/fsharp/Compiler/Libraries/Core/Collections/ListTests.fs index a57dac45d17..626f9c6e2c0 100644 --- a/tests/fsharp/Compiler/Libraries/Core/Collections/ListTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/Collections/ListTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Libraries/Core/ExtraTopLevelOperators/DictionaryTests.fs b/tests/fsharp/Compiler/Libraries/Core/ExtraTopLevelOperators/DictionaryTests.fs index c2f00658833..d52624ee01c 100644 --- a/tests/fsharp/Compiler/Libraries/Core/ExtraTopLevelOperators/DictionaryTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/ExtraTopLevelOperators/DictionaryTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test module ``Dictionary Tests`` = diff --git a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/CastToUnitsTests.fs b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/CastToUnitsTests.fs index b36481fb338..be85ccd4092 100644 --- a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/CastToUnitsTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/CastToUnitsTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test [] module ``Cast to Units Tests`` = diff --git a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/ComparisonTests.fs b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/ComparisonTests.fs index 4e5c5d2657c..e3b5abf34ff 100644 --- a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/ComparisonTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/ComparisonTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test [] module ``Comparison Tests`` = diff --git a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/StringFormatTests.fs b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/StringFormatTests.fs index 7e5f01967aa..46380acecde 100644 --- a/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/StringFormatTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/LanguagePrimitives/StringFormatTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test [] module ``String Format Tests`` = diff --git a/tests/fsharp/Compiler/Libraries/Core/NativeInterop/StackallocTests.fs b/tests/fsharp/Compiler/Libraries/Core/NativeInterop/StackallocTests.fs index 9111f90d87b..1e244b53aa5 100644 --- a/tests/fsharp/Compiler/Libraries/Core/NativeInterop/StackallocTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/NativeInterop/StackallocTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics #nowarn "9" diff --git a/tests/fsharp/Compiler/Libraries/Core/Operators/AbsTests.fs b/tests/fsharp/Compiler/Libraries/Core/Operators/AbsTests.fs index 826bafd33a3..ca2f753de4e 100644 --- a/tests/fsharp/Compiler/Libraries/Core/Operators/AbsTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/Operators/AbsTests.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework open FSharp.Compiler.Diagnostics -open FSharp.Test.Utilities +open FSharp.Test [] module ``Abs Tests`` = diff --git a/tests/fsharp/Compiler/Libraries/Core/Operators/CastTests.fs b/tests/fsharp/Compiler/Libraries/Core/Operators/CastTests.fs index 5f4d34df153..df5bc326025 100644 --- a/tests/fsharp/Compiler/Libraries/Core/Operators/CastTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/Operators/CastTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open System [] diff --git a/tests/fsharp/Compiler/Libraries/Core/Operators/HashTests.fs b/tests/fsharp/Compiler/Libraries/Core/Operators/HashTests.fs index b5b7f8af3d9..e809fafa937 100644 --- a/tests/fsharp/Compiler/Libraries/Core/Operators/HashTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/Operators/HashTests.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework open FSharp.Compiler.Diagnostics -open FSharp.Test.Utilities +open FSharp.Test [] module ``Hash Tests`` = diff --git a/tests/fsharp/Compiler/Libraries/Core/Operators/SignTests.fs b/tests/fsharp/Compiler/Libraries/Core/Operators/SignTests.fs index 158131e2ca8..2c67b1d1b8d 100644 --- a/tests/fsharp/Compiler/Libraries/Core/Operators/SignTests.fs +++ b/tests/fsharp/Compiler/Libraries/Core/Operators/SignTests.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework open FSharp.Compiler.Diagnostics -open FSharp.Test.Utilities +open FSharp.Test [] module ``Sign Tests`` = diff --git a/tests/fsharp/Compiler/Regressions/ForInDoMutableRegressionTest.fs b/tests/fsharp/Compiler/Regressions/ForInDoMutableRegressionTest.fs index 28cc6340422..6ea9fe2dc42 100644 --- a/tests/fsharp/Compiler/Regressions/ForInDoMutableRegressionTest.fs +++ b/tests/fsharp/Compiler/Regressions/ForInDoMutableRegressionTest.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open System open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test [] module ForInDoMutableRegressionTest = diff --git a/tests/fsharp/Compiler/Regressions/IndexerRegressionTests.fs b/tests/fsharp/Compiler/Regressions/IndexerRegressionTests.fs index a6e7cf6e4e9..c9c1a77bafd 100644 --- a/tests/fsharp/Compiler/Regressions/IndexerRegressionTests.fs +++ b/tests/fsharp/Compiler/Regressions/IndexerRegressionTests.fs @@ -4,7 +4,7 @@ namespace FSharp.Compiler.UnitTests open System open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test [] module IndexerRegressionTests = diff --git a/tests/fsharp/Compiler/Regressions/NullableOptionalRegressionTests.fs b/tests/fsharp/Compiler/Regressions/NullableOptionalRegressionTests.fs index 26391ffa1c3..c4009ee5233 100644 --- a/tests/fsharp/Compiler/Regressions/NullableOptionalRegressionTests.fs +++ b/tests/fsharp/Compiler/Regressions/NullableOptionalRegressionTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities.Compiler +open FSharp.Test.Compiler [] module NullableOptionalRegressionTests = diff --git a/tests/fsharp/Compiler/Service/MultiProjectTests.fs b/tests/fsharp/Compiler/Service/MultiProjectTests.fs index 88a131fad09..7835f409f8c 100644 --- a/tests/fsharp/Compiler/Service/MultiProjectTests.fs +++ b/tests/fsharp/Compiler/Service/MultiProjectTests.fs @@ -6,10 +6,9 @@ open System open System.IO open FSharp.Compiler.Diagnostics open NUnit.Framework +open FSharp.Test open FSharp.Test.Utilities -open FSharp.Test.Utilities.Utilities -open FSharp.Test.Utilities.Compiler -open FSharp.Tests +open FSharp.Test.Compiler open FSharp.Compiler.CodeAnalysis open Microsoft.CodeAnalysis open Microsoft.CodeAnalysis.CSharp diff --git a/tests/fsharp/Compiler/Service/SignatureGenerationTests.fs b/tests/fsharp/Compiler/Service/SignatureGenerationTests.fs index 3fb1a5487c8..b6898e524bb 100644 --- a/tests/fsharp/Compiler/Service/SignatureGenerationTests.fs +++ b/tests/fsharp/Compiler/Service/SignatureGenerationTests.fs @@ -4,10 +4,9 @@ namespace FSharp.Compiler.UnitTests open FSharp.Compiler.Diagnostics open NUnit.Framework +open FSharp.Test open FSharp.Test.Utilities -open FSharp.Test.Utilities.Utilities -open FSharp.Test.Utilities.Compiler -open FSharp.Tests +open FSharp.Test.Compiler [] module SignatureGenerationTests = diff --git a/tests/fsharp/Compiler/Stress/LargeExprTests.fs b/tests/fsharp/Compiler/Stress/LargeExprTests.fs index c0c8e69cdaa..b9d6e7bece2 100644 --- a/tests/fsharp/Compiler/Stress/LargeExprTests.fs +++ b/tests/fsharp/Compiler/Stress/LargeExprTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test [] module LargeExprTests = diff --git a/tests/fsharp/Compiler/Warnings/AssignmentWarningTests.fs b/tests/fsharp/Compiler/Warnings/AssignmentWarningTests.fs index c87ccdefd0f..d6ef26bcdf1 100644 --- a/tests/fsharp/Compiler/Warnings/AssignmentWarningTests.fs +++ b/tests/fsharp/Compiler/Warnings/AssignmentWarningTests.fs @@ -3,7 +3,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Warnings/ExperimentalAttributeTests.fs b/tests/fsharp/Compiler/Warnings/ExperimentalAttributeTests.fs index d83ac8632e8..ed51078bf7a 100644 --- a/tests/fsharp/Compiler/Warnings/ExperimentalAttributeTests.fs +++ b/tests/fsharp/Compiler/Warnings/ExperimentalAttributeTests.fs @@ -2,7 +2,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/Compiler/Warnings/PatternMatchingWarningTests.fs b/tests/fsharp/Compiler/Warnings/PatternMatchingWarningTests.fs index 4aa8feb8a7d..864f760cc04 100644 --- a/tests/fsharp/Compiler/Warnings/PatternMatchingWarningTests.fs +++ b/tests/fsharp/Compiler/Warnings/PatternMatchingWarningTests.fs @@ -1,7 +1,7 @@ namespace FSharp.Compiler.UnitTests open NUnit.Framework -open FSharp.Test.Utilities +open FSharp.Test open FSharp.Compiler.Diagnostics [] diff --git a/tests/fsharp/TypeProviderTests.fs b/tests/fsharp/TypeProviderTests.fs index 332a38a63bc..2bd7f2111e0 100644 --- a/tests/fsharp/TypeProviderTests.fs +++ b/tests/fsharp/TypeProviderTests.fs @@ -33,7 +33,7 @@ let FSC_BASIC = FSC_OPT_PLUS_DEBUG let FSI_BASIC = FSI_FILE #endif -let inline getTestsDirectory dir = __SOURCE_DIRECTORY__ ++ dir +let inline getTestsDirectory dir = FSharp.Test.Utilities.getTestsDirectory __SOURCE_DIRECTORY__ dir let testConfig = getTestsDirectory >> testConfig [] diff --git a/tests/fsharp/tests.fs b/tests/fsharp/tests.fs index 93957279ebf..77f55f50b8f 100644 --- a/tests/fsharp/tests.fs +++ b/tests/fsharp/tests.fs @@ -17,6 +17,7 @@ open TestFramework open Scripting open SingleTest open HandleExpects +open FSharp.Test #if NETCOREAPP // Use these lines if you want to test CoreCLR @@ -31,7 +32,7 @@ let FSI_BASIC = FSI_FILE #endif // ^^^^^^^^^^^^ To run these tests in F# Interactive , 'build net40', then send this chunk, then evaluate body of a test ^^^^^^^^^^^^ -let inline getTestsDirectory dir = __SOURCE_DIRECTORY__ ++ dir +let inline getTestsDirectory dir = FSharp.Test.Utilities.getTestsDirectory __SOURCE_DIRECTORY__ dir let singleTestBuildAndRun = getTestsDirectory >> singleTestBuildAndRun let singleTestBuildAndRunVersion = getTestsDirectory >> singleTestBuildAndRunVersion let testConfig = getTestsDirectory >> testConfig diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest3.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest3.il.bsl index 6dfebd88b1e..76f073cdd4a 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest3.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest3.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.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:4:3:0 + .ver 5:0:0:0 } .assembly AsyncExpressionSteppingTest3 { @@ -29,20 +29,20 @@ } .mresource public FSharpSignatureData.AsyncExpressionSteppingTest3 { - // Offset: 0x00000000 Length: 0x00000277 + // Offset: 0x00000000 Length: 0x0000026B } .mresource public FSharpOptimizationData.AsyncExpressionSteppingTest3 { - // Offset: 0x00000280 Length: 0x000000B1 + // Offset: 0x00000270 Length: 0x000000B1 } .module AsyncExpressionSteppingTest3.dll -// MVID: {5AF5DDAE-6394-F35E-A745-0383AEDDF55A} +// MVID: {60EDFA6D-6394-F35E-A745-03836DFAED60} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x04650000 +// Image base: 0x06D00000 // =============== CLASS MEMBERS DECLARATION =================== @@ -80,15 +80,17 @@ .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn Invoke(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1 ctxt) cil managed { - // Code size 14 (0xe) + // Code size 15 (0xf) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 10,10 : 17,25 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\AsyncExpressionStepping\\AsyncExpressionSteppingTest3.fs' - IL_0000: ldarga.s ctxt - IL_0002: ldarg.0 - IL_0003: ldfld int32 AsyncExpressionSteppingTest3/AsyncExpressionSteppingTest3/'f3@10-1'::'value' - IL_0008: call instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1::OnSuccess(!0) - IL_000d: ret + .line 10,10 : 17,25 'C:\\GitHub\\dsyme\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\AsyncExpressionStepping\\AsyncExpressionSteppingTest3.fs' + IL_0000: ldarg.1 + IL_0001: ldarg.0 + IL_0002: ldfld int32 AsyncExpressionSteppingTest3/AsyncExpressionSteppingTest3/'f3@10-1'::'value' + IL_0007: tail. + IL_0009: call class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1::Success(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1, + !0) + IL_000e: ret } // end of method 'f3@10-1'::Invoke } // end of class 'f3@10-1' diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest4.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest4.il.bsl index ce54bd4945d..61ab690daf9 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest4.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest4.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.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:4:3:0 + .ver 5:0:0:0 } .assembly AsyncExpressionSteppingTest4 { @@ -29,20 +29,20 @@ } .mresource public FSharpSignatureData.AsyncExpressionSteppingTest4 { - // Offset: 0x00000000 Length: 0x00000277 + // Offset: 0x00000000 Length: 0x0000026B } .mresource public FSharpOptimizationData.AsyncExpressionSteppingTest4 { - // Offset: 0x00000280 Length: 0x000000B1 + // Offset: 0x00000270 Length: 0x000000B1 } .module AsyncExpressionSteppingTest4.dll -// MVID: {5AF5DDAE-6394-6D4B-A745-0383AEDDF55A} +// MVID: {60EDFA6D-6394-6D4B-A745-03836DFAED60} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x028F0000 +// Image base: 0x06840000 // =============== CLASS MEMBERS DECLARATION =================== @@ -80,15 +80,17 @@ .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn Invoke(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1 ctxt) cil managed { - // Code size 14 (0xe) + // Code size 15 (0xf) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 10,10 : 21,29 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\AsyncExpressionStepping\\AsyncExpressionSteppingTest4.fs' - IL_0000: ldarga.s ctxt - IL_0002: ldarg.0 - IL_0003: ldfld int32 AsyncExpressionSteppingTest4/AsyncExpressionSteppingTest4/'f4@10-2'::'value' - IL_0008: call instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1::OnSuccess(!0) - IL_000d: ret + .line 10,10 : 21,29 'C:\\GitHub\\dsyme\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\AsyncExpressionStepping\\AsyncExpressionSteppingTest4.fs' + IL_0000: ldarg.1 + IL_0001: ldarg.0 + IL_0002: ldfld int32 AsyncExpressionSteppingTest4/AsyncExpressionSteppingTest4/'f4@10-2'::'value' + IL_0007: tail. + IL_0009: call class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1::Success(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1, + !0) + IL_000e: ret } // end of method 'f4@10-2'::Invoke } // end of class 'f4@10-2' diff --git a/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest6.il.bsl b/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest6.il.bsl index 379ad6bbe7c..165e470e0bf 100644 --- a/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest6.il.bsl +++ b/tests/fsharpqa/Source/CodeGen/EmittedIL/AsyncExpressionStepping/AsyncExpressionSteppingTest6.il.bsl @@ -1,5 +1,5 @@ -// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.1055.0 +// Microsoft (R) .NET Framework IL Disassembler. Version 4.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:4:3:0 + .ver 5:0:0:0 } .assembly AsyncExpressionSteppingTest6 { @@ -29,20 +29,20 @@ } .mresource public FSharpSignatureData.AsyncExpressionSteppingTest6 { - // Offset: 0x00000000 Length: 0x000002A3 + // Offset: 0x00000000 Length: 0x00000297 } .mresource public FSharpOptimizationData.AsyncExpressionSteppingTest6 { - // Offset: 0x000002A8 Length: 0x000000BE + // Offset: 0x000002A0 Length: 0x000000BE } .module AsyncExpressionSteppingTest6.dll -// MVID: {5AF5DDAE-6394-4FAD-A745-0383AEDDF55A} +// MVID: {60EDFA6D-6394-4FAD-A745-03836DFAED60} .imagebase 0x00400000 .file alignment 0x00000200 .stackreserve 0x00100000 .subsystem 0x0003 // WINDOWS_CUI .corflags 0x00000001 // ILONLY -// Image base: 0x04C40000 +// Image base: 0x071A0000 // =============== CLASS MEMBERS DECLARATION =================== @@ -55,7 +55,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 'f2@10-4' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f2@10-1' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn> { .field public int32 'value' @@ -73,27 +73,29 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@10-4'::'value' + IL_0008: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@10-1'::'value' IL_000d: ret - } // end of method 'f2@10-4'::.ctor + } // end of method 'f2@10-1'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn Invoke(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1 ctxt) cil managed { - // Code size 14 (0xe) + // Code size 15 (0xf) .maxstack 8 .language '{AB4F38C9-B6E6-43BA-BE3B-58080B2CCCE3}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' - .line 10,10 : 17,25 'C:\\GitHub\\dsyme\\visualfsharp\\tests\\fsharpqa\\Source\\CodeGen\\EmittedIL\\AsyncExpressionStepping\\AsyncExpressionSteppingTest6.fs' - IL_0000: ldarga.s ctxt - IL_0002: ldarg.0 - IL_0003: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@10-4'::'value' - IL_0008: call instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1::OnSuccess(!0) - IL_000d: ret - } // end of method 'f2@10-4'::Invoke + .line 10,10 : 17,25 'C:\\GitHub\\dsyme\\fsharp\\tests\\fsharpqa\\source\\CodeGen\\EmittedIL\\AsyncExpressionStepping\\AsyncExpressionSteppingTest6.fs' + IL_0000: ldarg.1 + IL_0001: ldarg.0 + IL_0002: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@10-1'::'value' + IL_0007: tail. + IL_0009: call class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1::Success(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1, + !0) + IL_000e: ret + } // end of method 'f2@10-1'::Invoke - } // end of class 'f2@10-4' + } // end of class 'f2@10-1' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f2@5-3' + .class auto ansi serializable sealed nested assembly beforefieldinit f2@5 extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder builder@ @@ -111,9 +113,9 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@5-3'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/f2@5::builder@ IL_000d: ret - } // end of method 'f2@5-3'::.ctor + } // end of method f2@5::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 Invoke(class [FSharp.Core]Microsoft.FSharp.Core.Unit unitVar) cil managed @@ -150,20 +152,20 @@ IL_0029: stloc.2 .line 10,10 : 17,25 '' IL_002a: ldarg.0 - IL_002b: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@5-3'::builder@ + IL_002b: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/f2@5::builder@ IL_0030: stloc.3 IL_0031: ldloc.2 IL_0032: stloc.s V_4 IL_0034: ldloc.s V_4 - IL_0036: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@10-4'::.ctor(int32) + IL_0036: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@10-1'::.ctor(int32) IL_003b: tail. IL_003d: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::MakeAsync(class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>) IL_0042: ret - } // end of method 'f2@5-3'::Invoke + } // end of method f2@5::Invoke - } // end of class 'f2@5-3' + } // end of class f2@5 - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@20-7' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@20-5' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn> { .field public int32 'value' @@ -181,26 +183,28 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@20-7'::'value' + IL_0008: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@20-5'::'value' IL_000d: ret - } // end of method 'f3@20-7'::.ctor + } // end of method 'f3@20-5'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn Invoke(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1 ctxt) cil managed { - // Code size 14 (0xe) + // Code size 15 (0xf) .maxstack 8 .line 20,20 : 17,25 '' - IL_0000: ldarga.s ctxt - IL_0002: ldarg.0 - IL_0003: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@20-7'::'value' - IL_0008: call instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1::OnSuccess(!0) - IL_000d: ret - } // end of method 'f3@20-7'::Invoke + IL_0000: ldarg.1 + IL_0001: ldarg.0 + IL_0002: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@20-5'::'value' + IL_0007: tail. + IL_0009: call class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1::Success(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1, + !0) + IL_000e: ret + } // end of method 'f3@20-5'::Invoke - } // end of class 'f3@20-7' + } // end of class 'f3@20-5' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@19-6' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@19-4' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder builder@ @@ -222,15 +226,15 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-6'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-4'::builder@ IL_000d: ldarg.0 IL_000e: ldarg.2 - IL_000f: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-6'::x1 + IL_000f: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-4'::x1 IL_0014: ldarg.0 IL_0015: ldarg.3 - IL_0016: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpRef`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-6'::y + IL_0016: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpRef`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-4'::y IL_001b: ret - } // end of method 'f3@19-6'::.ctor + } // end of method 'f3@19-4'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 Invoke(int32 _arg4) cil managed @@ -246,9 +250,9 @@ IL_0001: stloc.0 .line 19,19 : 17,37 '' IL_0002: ldarg.0 - IL_0003: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-6'::x1 + IL_0003: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-4'::x1 IL_0008: ldarg.0 - IL_0009: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpRef`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-6'::y + IL_0009: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpRef`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-4'::y IL_000e: call !!0 [FSharp.Core]Microsoft.FSharp.Core.Operators::op_Dereference(class [FSharp.Core]Microsoft.FSharp.Core.FSharpRef`1) IL_0013: add IL_0014: ldloc.0 @@ -256,20 +260,20 @@ IL_0016: stloc.1 .line 20,20 : 17,25 '' IL_0017: ldarg.0 - IL_0018: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-6'::builder@ + IL_0018: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-4'::builder@ IL_001d: stloc.2 IL_001e: ldloc.1 IL_001f: stloc.3 IL_0020: ldloc.3 - IL_0021: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@20-7'::.ctor(int32) + IL_0021: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@20-5'::.ctor(int32) IL_0026: tail. IL_0028: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::MakeAsync(class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>) IL_002d: ret - } // end of method 'f3@19-6'::Invoke + } // end of method 'f3@19-4'::Invoke - } // end of class 'f3@19-6' + } // end of class 'f3@19-4' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@18-8' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@18-6' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 computation @@ -292,12 +296,12 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-8'::computation + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-6'::computation IL_000d: ldarg.0 IL_000e: ldarg.2 - IL_000f: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-8'::binder + IL_000f: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-6'::binder IL_0014: ret - } // end of method 'f3@18-8'::.ctor + } // end of method 'f3@18-6'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn Invoke(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1 ctxt) cil managed @@ -307,19 +311,19 @@ .line 18,18 : 17,31 '' IL_0000: ldarg.1 IL_0001: ldarg.0 - IL_0002: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-8'::computation + IL_0002: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-6'::computation IL_0007: ldarg.0 - IL_0008: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-8'::binder + IL_0008: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-6'::binder IL_000d: tail. IL_000f: call class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::Bind(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1, class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0014: ret - } // end of method 'f3@18-8'::Invoke + } // end of method 'f3@18-6'::Invoke - } // end of class 'f3@18-8' + } // end of class 'f3@18-6' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@16-5' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@16-3' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder builder@ @@ -339,12 +343,12 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-5'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-3'::builder@ IL_000d: ldarg.0 IL_000e: ldarg.2 - IL_000f: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-5'::x1 + IL_000f: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-3'::x1 IL_0014: ret - } // end of method 'f3@16-5'::.ctor + } // end of method 'f3@16-3'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 Invoke(int32 _arg3) cil managed @@ -369,31 +373,31 @@ IL_000f: nop .line 18,18 : 17,31 '' IL_0010: ldarg.0 - IL_0011: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-5'::builder@ + IL_0011: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-3'::builder@ IL_0016: stloc.2 IL_0017: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6::f2() IL_001c: stloc.3 IL_001d: ldarg.0 - IL_001e: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-5'::builder@ + IL_001e: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-3'::builder@ IL_0023: ldarg.0 - IL_0024: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-5'::x1 + IL_0024: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-3'::x1 IL_0029: ldloc.1 - IL_002a: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-6'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder, + IL_002a: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@19-4'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder, int32, class [FSharp.Core]Microsoft.FSharp.Core.FSharpRef`1) IL_002f: stloc.s V_4 IL_0031: ldloc.3 IL_0032: ldloc.s V_4 - IL_0034: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-8'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, + IL_0034: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@18-6'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0039: tail. IL_003b: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::MakeAsync(class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>) IL_0040: ret - } // end of method 'f3@16-5'::Invoke + } // end of method 'f3@16-3'::Invoke - } // end of class 'f3@16-5' + } // end of class 'f3@16-3' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@15-9' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@15-7' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 computation @@ -416,12 +420,12 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-9'::computation + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-7'::computation IL_000d: ldarg.0 IL_000e: ldarg.2 - IL_000f: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-9'::binder + IL_000f: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-7'::binder IL_0014: ret - } // end of method 'f3@15-9'::.ctor + } // end of method 'f3@15-7'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn Invoke(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1 ctxt) cil managed @@ -431,19 +435,19 @@ .line 15,15 : 17,31 '' IL_0000: ldarg.1 IL_0001: ldarg.0 - IL_0002: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-9'::computation + IL_0002: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-7'::computation IL_0007: ldarg.0 - IL_0008: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-9'::binder + IL_0008: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-7'::binder IL_000d: tail. IL_000f: call class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::Bind(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1, class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0014: ret - } // end of method 'f3@15-9'::Invoke + } // end of method 'f3@15-7'::Invoke - } // end of class 'f3@15-9' + } // end of class 'f3@15-7' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@15-4' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@15-2' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder builder@ @@ -463,12 +467,12 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-4'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-2'::builder@ IL_000d: ldarg.0 IL_000e: ldarg.2 - IL_000f: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-4'::x1 + IL_000f: stfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-2'::x1 IL_0014: ret - } // end of method 'f3@15-4'::.ctor + } // end of method 'f3@15-2'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 Invoke(int32 _arg2) cil managed @@ -484,29 +488,29 @@ IL_0001: stloc.0 .line 15,15 : 17,31 '' IL_0002: ldarg.0 - IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-4'::builder@ + IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-2'::builder@ IL_0008: stloc.1 IL_0009: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6::f2() IL_000e: stloc.2 IL_000f: ldarg.0 - IL_0010: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-4'::builder@ + IL_0010: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-2'::builder@ IL_0015: ldarg.0 - IL_0016: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-4'::x1 - IL_001b: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-5'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder, + IL_0016: ldfld int32 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-2'::x1 + IL_001b: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@16-3'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder, int32) IL_0020: stloc.3 IL_0021: ldloc.2 IL_0022: ldloc.3 - IL_0023: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-9'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, + IL_0023: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-7'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0028: tail. IL_002a: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::MakeAsync(class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>) IL_002f: ret - } // end of method 'f3@15-4'::Invoke + } // end of method 'f3@15-2'::Invoke - } // end of class 'f3@15-4' + } // end of class 'f3@15-2' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@14-10' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@14-8' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 computation @@ -529,12 +533,12 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-10'::computation + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-8'::computation IL_000d: ldarg.0 IL_000e: ldarg.2 - IL_000f: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-10'::binder + IL_000f: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-8'::binder IL_0014: ret - } // end of method 'f3@14-10'::.ctor + } // end of method 'f3@14-8'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn Invoke(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1 ctxt) cil managed @@ -544,19 +548,19 @@ .line 14,14 : 17,31 '' IL_0000: ldarg.1 IL_0001: ldarg.0 - IL_0002: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-10'::computation + IL_0002: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-8'::computation IL_0007: ldarg.0 - IL_0008: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-10'::binder + IL_0008: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-8'::binder IL_000d: tail. IL_000f: call class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::Bind(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1, class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0014: ret - } // end of method 'f3@14-10'::Invoke + } // end of method 'f3@14-8'::Invoke - } // end of class 'f3@14-10' + } // end of class 'f3@14-8' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@14-3' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@14-1' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder builder@ @@ -574,9 +578,9 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-3'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-1'::builder@ IL_000d: ret - } // end of method 'f3@14-3'::.ctor + } // end of method 'f3@14-1'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 Invoke(int32 _arg1) cil managed @@ -592,28 +596,28 @@ IL_0001: stloc.0 .line 14,14 : 17,31 '' IL_0002: ldarg.0 - IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-3'::builder@ + IL_0003: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-1'::builder@ IL_0008: stloc.1 IL_0009: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6::f2() IL_000e: stloc.2 IL_000f: ldarg.0 - IL_0010: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-3'::builder@ + IL_0010: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-1'::builder@ IL_0015: ldloc.0 - IL_0016: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-4'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder, + IL_0016: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@15-2'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder, int32) IL_001b: stloc.3 IL_001c: ldloc.2 IL_001d: ldloc.3 - IL_001e: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-10'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, - class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) + IL_001e: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-8'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, + class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0023: tail. IL_0025: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::MakeAsync(class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>) IL_002a: ret - } // end of method 'f3@14-3'::Invoke + } // end of method 'f3@14-1'::Invoke - } // end of class 'f3@14-3' + } // end of class 'f3@14-1' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@13-11' + .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@13-9' extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 computation @@ -636,12 +640,12 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-11'::computation + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-9'::computation IL_000d: ldarg.0 IL_000e: ldarg.2 - IL_000f: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-11'::binder + IL_000f: stfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-9'::binder IL_0014: ret - } // end of method 'f3@13-11'::.ctor + } // end of method 'f3@13-9'::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn Invoke(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1 ctxt) cil managed @@ -651,19 +655,19 @@ .line 13,13 : 17,31 '' IL_0000: ldarg.1 IL_0001: ldarg.0 - IL_0002: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-11'::computation + IL_0002: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-9'::computation IL_0007: ldarg.0 - IL_0008: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-11'::binder + IL_0008: ldfld class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-9'::binder IL_000d: tail. IL_000f: call class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::Bind(valuetype [FSharp.Core]Microsoft.FSharp.Control.AsyncActivation`1, class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0014: ret - } // end of method 'f3@13-11'::Invoke + } // end of method 'f3@13-9'::Invoke - } // end of class 'f3@13-11' + } // end of class 'f3@13-9' - .class auto ansi serializable sealed nested assembly beforefieldinit 'f3@13-2' + .class auto ansi serializable sealed nested assembly beforefieldinit f3@13 extends class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> { .field public class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder builder@ @@ -681,9 +685,9 @@ IL_0001: call instance void class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>::.ctor() IL_0006: ldarg.0 IL_0007: ldarg.1 - IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-2'::builder@ + IL_0008: stfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/f3@13::builder@ IL_000d: ret - } // end of method 'f3@13-2'::.ctor + } // end of method f3@13::.ctor .method public strict virtual instance class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 Invoke(class [FSharp.Core]Microsoft.FSharp.Core.Unit unitVar) cil managed @@ -695,24 +699,24 @@ [2] class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2> V_2) .line 13,13 : 17,31 '' IL_0000: ldarg.0 - IL_0001: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-2'::builder@ + IL_0001: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/f3@13::builder@ IL_0006: stloc.0 IL_0007: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6::f2() IL_000c: stloc.1 IL_000d: ldarg.0 - IL_000e: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-2'::builder@ - IL_0013: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-3'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder) + IL_000e: ldfld class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/f3@13::builder@ + IL_0013: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@14-1'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder) IL_0018: stloc.2 IL_0019: ldloc.1 IL_001a: ldloc.2 - IL_001b: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-11'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, - class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) + IL_001b: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-9'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1, + class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0020: tail. IL_0022: call class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 [FSharp.Core]Microsoft.FSharp.Control.AsyncPrimitives::MakeAsync(class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2,class [FSharp.Core]Microsoft.FSharp.Control.AsyncReturn>) IL_0027: ret - } // end of method 'f3@13-2'::Invoke + } // end of method f3@13::Invoke - } // end of class 'f3@13-2' + } // end of class f3@13 .method public static class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 f2() cil managed @@ -725,7 +729,7 @@ IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldloc.0 - IL_0008: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f2@5-3'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder) + IL_0008: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/f2@5::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder) IL_000d: tail. IL_000f: callvirt instance class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder::Delay(class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0014: ret @@ -742,7 +746,7 @@ IL_0005: stloc.0 IL_0006: ldloc.0 IL_0007: ldloc.0 - IL_0008: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/'f3@13-2'::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder) + IL_0008: newobj instance void AsyncExpressionSteppingTest6/AsyncExpressionSteppingTest6/f3@13::.ctor(class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder) IL_000d: tail. IL_000f: callvirt instance class [FSharp.Core]Microsoft.FSharp.Control.FSharpAsync`1 [FSharp.Core]Microsoft.FSharp.Control.FSharpAsyncBuilder::Delay(class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2>) IL_0014: ret