anchor.diff:    if /i "%1" == "-variants"         set _Variants=%~2&                                          goto :ArgOkShift2
     if /i "%1" == "-cleanupall"       set _CleanUpAll=1&                                          goto :ArgOk
   
  +  ::Extra ch.exe command line flags
  +  if /i "%1" == "-ExtraHostFlags"   set _ExtraHostFlags=%~2&                                    goto :ArgOkShift2
  +  if /i "%1" == "-DumpOnCrash"      set _DumpOnCrash=1&                                         goto :ArgOk
  +  if /i "%1" == "-CrashOnException" set _CrashOnException=1&                                    goto :ArgOk
  +
     if /i "%1" == "-extraVariants" (
       :: Extra variants are specified by the user but not run by default.
       if "%_ExtraVariants%" == "" (
  
positive.code: 
    if "%_BuildType%" == "debug" (
      rem Enabling storing dumps on user directory.
      set EXTRA_CC_FLAGS=%EXTRA_CC_FLAGS% -DumpOnCrash
    )
  
    if "%_Binary%" == "-binary:ch.exe" (
  
negative.code:     set EXTRA_CC_FLAGS=%EXTRA_CC_FLAGS% -nonative
      set EXTRA_RL_FLAGS=-nottags:exclude_interpreted -nottags:fails_interpreted
    )
    :: DisableJit is different from NoNative in that NoNative can be used
    :: with builds which include backend code, whereas DisableJit doesn't have
    :: backend code linked in, and also disables other features that incidentally
    :: depends on the backend like dynamic profile, asmjs, simdjs, background parsing etc.
  