anchor.diff:  )
   exit /b
   
  -:SplitVer %1=X.Y.Z %2=XVAR %3=YVAR %4=ZVAR
  -for /f "tokens=1-3 delims=-." %%x in ("%~1") do (
  -  set "%2=%%x"
  -  set "%3=%%y"
  -  set "%4=%%z"
  +:SplitVer %1=X.Y.Z.T %2=XVAR %3=YVAR %4=ZVAR %5=TVAR
  +for /f "tokens=1-4 delims=-." %%a in ("%~1") do (
  +  set "%2=%%a"
  +  set "%3=%%b"
  +  set "%4=%%c"
  +  set "%5=%%d"
   )
   exit /b
   
   :CompareInteger %1=Integer1 %2=Integer2
   setlocal
  +%ECHO.D% call %0 %*
   if "%1%2"=="" exit /b 0				&:# They're both empty, thus equal
   if "%2"=="" exit /b 1				&:# Integer1 > nothing
   if "%1"=="" exit /b -1				&:# nothing < Integer2
  
positive.code: endlocal & exit /b -1				&:# Integer1 < Integer2
  
  :CompareVersions %1=Version1 %2=Version2
  %ECHO.D% call %0 %*
  call :SplitVer %1 V1MAJOR V1MINOR V1PATCH
  call :SplitVer %2 V2MAJOR V2MINOR V2PATCH
  call :CompareInteger %V1MAJOR% %V2MAJOR%
  if not %ERRORLEVEL%==0 %RETURN% %ERRORLEVEL%
  call :CompareInteger %V1MINOR% %V2MINOR%
  if not %ERRORLEVEL%==0 %RETURN% %ERRORLEVEL%
  call :CompareInteger %V1PATCH% %V2PATCH%
  %RETURN% %ERRORLEVEL%
  
  :#----------------------------------------------------------------------------#
  
  
negative.code: :#                                                                            #
  :#  History                                                                   #
  :#   2020-06-03 JFL Created this script.                                      #
  :#   2020-07-01 JFL Added support for versions with 4 parts: X.Y.Z.T          #
  :#                                                                            #
  :##############################################################################
  
  setlocal EnableExtensions DisableDelayedExpansion &:# Make sure ! characters are preserved
  set "VERSION=2020-07-01"
  set "SCRIPT=%~nx0"		&:# Script name
  set "SNAME=%~n0"		&:# Script name, without its extension
  set "SPATH=%~dp0"		&:# Script path
  