anchor.diff:  if "!ARG!"=="-L" call :Debug.SetLog & goto next_arg
   if "!ARG!"=="-masm" %POPARG% & set "MASM=!ARG!" & goto next_arg
   if "!ARG!"=="-msvc" %POPARG% & set "MSVC=!ARG!" & goto next_arg
  +if "!ARG!"=="-nodos" set "MASM=-" & set "MSVC=-" & goto next_arg
   if "!ARG!"=="-o" %POPARG% & set "OUTDIR=!ARG!" & goto next_arg
   if "!ARG!"=="-p" set "PERSISTENT_VARS=1" & goto next_arg
   if "!ARG!"=="-r" set "RECURSE=1" & goto next_arg
   if "!ARG!"=="-R" set "RECURSE=0" & goto next_arg
   if "!ARG!"=="-v" call :Verbose.On & goto next_arg
  -if "!ARG!"=="-vs" %POPARG% & set "VSTUDIO=!ARG!" & goto next_arg
  +if "!ARG!"=="-vsp" %POPARG% & set "VSPATH=!ARG!" & goto next_arg
  +if "!ARG!"=="-vsn" %POPARG% & set "VSNAME=!ARG!" & goto next_arg
   if "!ARG!"=="-V" (echo %VERSION%) & goto :eof
   >&2 echo Unexpected argument ignored: !"ARG"!
   goto next_arg
  
positive.code: set "VC=%~4"
  call :findvs.init
  set "SEARCH_IN=call :FindVsIn !PROC[%~1]!"
  :# If specified on the command line, and looking reasonably valid, then use it.
  if defined VSTUDIO call :FindVsIn %2 "%VSTUDIO%" "%VC15S%" BIN15 && goto :foundvs
  if defined VSTUDIO call :FindVsIn %2 "%VSTUDIO%" "VC VC7 VC98" BIN && goto :foundvs
  :# If VS' vcvars*.bat has already been run manually, then use it.
  if defined VSINSTALLDIR call :FindVsIn %2 "%VSINSTALLDIR%" "%VC15S%" BIN15 && goto :foundvs
  if defined VSINSTALLDIR call :FindVsIn %2 "%VSINSTALLDIR%" "VC VC7 VC98" BIN && goto :foundvs
  :# Else scan all Visual Studio versions, starting from the newest ones.
  goto :lastvs &:# Scan all Visual Studio versions
  
  
negative.code: set "MASM="
  set "MSVC="
  set "VSTUDIO="
  set "VSPATH="
  set "VSNAME="
  set "RECURSE=1"
  
  :next_arg
  