anchor.diff:  @echo off
  +set PATH~=%PATH%
  +set MINGW32=C:\mingw\i686-6.2.0-posix-dwarf-rt_v5-rev1\mingw32\bin\
  +set MINGW64=C:\mingw-w64\x86_64-6.1.0-posix-seh-rt_v5-rev1\mingw64\bin\
  +
   echo -=( building %1 )=-------------------------------------------------------------------
   IF "%1"==""   GOTO ALL
   IF "%1"=="vm" GOTO VM
  
positive.code: 
  :TEST
  echo|set /p=Testing %1 ...
  ol.exe %1 >C:\TEMP\out
  fc C:\TEMP\out %1.ok > nul
  if errorlevel 1 goto fail1
  echo. Ok.
  GOTO:EOF
  :fail1
  
negative.code: GOTO:EOF
  
  
  :: let's do full package testing (32- and 64-bit binaries)
  :TESTS
  
  call :VM32
  call :VM64
  call :REPL32
  call :REPL64
  
  :: internal
  set PATH=%MINGW32%;%PATH%
  echo 32-bit internal test:
  gcc -std=c99 -g0 -O2 -Wall -fmessage-length=0 -fno-exceptions -Wno-strict-aliasing -DNAKED_VM ^
     src/olvm.c tests/vm.c -o "test-vm32.exe" -lws2_32 -DEMBEDDED_VM=1 -m32 -DNDEBUG -s -Isrc
  test-vm32.exe
  if errorlevel 1 goto fail
  
  set PATH=%PATH~%
  set PATH=%MINGW64%;%PATH%
  echo 64-bit internal test:
  gcc -std=c99 -g0 -O2 -Wall -fmessage-length=0 -fno-exceptions -Wno-strict-aliasing -DNAKED_VM ^
     src/olvm.c tests/vm.c -o "test-vm64.exe" -lws2_32 -DEMBEDDED_VM=1 -m64 -DNDEBUG -s -Isrc
  test-vm64.exe
  if errorlevel 1 goto fail
  
  set PATH=%PATH~%
  
  :: ffi
  set PATH=%MINGW32%;%PATH%
  echo|set /p=32-bit ffi testing ...
  ld -r -b binary -o src/repl32.o repl
  gcc -std=c99 -g3 -Wall -fmessage-length=0 -Wno-strict-aliasing -I src ^
      -DHAS_PINVOKE=1 ^
      src/olvm.c src/repl32.o tests/ffi.c -o "test-ffi32.exe" -lws2_32 -O2 -g2 -m32
  ::test-ffi32.exe tests/ffi.scm > C:\TEMP\out
  ::fc C:\TEMP\out tests/ffi.scm.ok > nul
  ::if errorlevel 1 (
  ::   echo. Failed.
  ::   goto fail
  ::)
  echo. Ok.
  
  set PATH=%PATH~%
  set PATH=%MINGW64%;%PATH%
  echo|set /p=64-bit ffi testing ...
  ld -r -b binary -o src/repl64.o repl
  gcc -std=c99 -g3 -Wall -fmessage-length=0 -Wno-strict-aliasing -I src ^
      -DHAS_PINVOKE=1 ^
      src/olvm.c src/repl64.o tests/ffi.c -o "test-ffi64.exe" -lws2_32 -O2 -g2 -m64
  test-ffi64.exe tests/ffi.scm > C:\TEMP\out
  fc C:\TEMP\out tests/ffi.scm.ok > nul
  if errorlevel 1 (
     echo. Failed.
     goto fail
  )
  echo. Ok.
  
  set PATH=%PATH~%
  
  :: Other tests
  call :TEST tests\apply.scm
  