anchor.diff:  REM Clean the previous build
   msbuild %MSBuildAdditionalCommandLineArgs% /t:Clean build/Toolset.sln /p:Configuration=%BuildConfiguration%  /fileloggerparameters:LogFile=%RoslynRoot%Binaries\BootstrapClean.log || goto :BuildFailed
   
  -call :TerminateCompilerServer
  +call :TerminateBuildProcesses
   
   if defined Perf (
     set Target=Build
  
positive.code: 
  :BuildFailed
  echo Build failed with ERRORLEVEL %ERRORLEVEL%
  call :TerminateCompilerServer
  exit /b 1
  
  :TerminateCompilerServer
  @REM Kill any instances VBCSCompiler.exe to release locked files, ignoring stderr if process is not open
  @REM This prevents future CI runs from failing while trying to delete those files.
  
  taskkill /F /IM vbcscompiler.exe 2> nul
  
negative.code: )
  
  REM Set the build version only so the assembly version is set to the semantic version,
  REM which allows analyzers to load because the compiler has binding redirects to the
  REM semantic version
  msbuild %MSBuildAdditionalCommandLineArgs% /p:BuildVersion=0.0.0.0 %RoslynRoot%build/Toolset.sln /p:NuGetRestorePackages=false /p:Configuration=%BuildConfiguration% /fileloggerparameters:LogFile=%RoslynRoot%Binaries\Bootstrap.log || goto :BuildFailed
  
  