anchor.diff:          match result with 
           | Some _ ->  result 
           | None -> 
  +        Debug.tracef "Resolution" "FSharp.Core: looking in environment variable"
           let result = 
               let var = System.Environment.GetEnvironmentVariable("FSHARP_CORE_LOCATION")
               if String.IsNullOrEmpty(var) then None
  
positive.code:           | None -> key20,key40 
            | Some v -> if v.Length > 1 && v.[0] <= '3' then key20,key40 else key40,key20
          
          let result = tryRegKey key1
          match result with 
          | Some _ ->  result 
          | None -> 
          let result =  tryRegKey key2
          match result with 
          | Some _ ->  result 
          | None ->
          let result = 
              let var = System.Environment.GetEnvironmentVariable("FSHARP_COMPILER_BIN")
              if String.IsNullOrEmpty(var) then None
  
negative.code:     // Check for an app.config setting to redirect the default compiler location
      // Like fsharp-compiler-location
      try 
        // FSharp.Compiler support setting an appkey for compiler location. I've never seen this used.
        Debug.tracef "Resolution" "BinFolderOfDefaultFSharpCore: Probing app.config"
        let result = tryAppConfig "fsharp-compiler-location"
        match result with 
        | Some _ ->  result 
        | None -> 
  
          // On windows the location of the compiler is via a registry key
          let key20 = @"Software\Microsoft\.NETFramework\AssemblyFolders\Microsoft.FSharp-" + FSharpTeamVersionNumber 
          let key40 = 
              match FSharpCompilerVersion.CurrentRequestedVersion with 
  