anchor.diff:      member x.ParseTree = 
           match infoOpt with
           | Some (_checkResults,parseResults) -> parseResults.ParseTree
  +        | None -> None
  +
  +    member x.CheckResults = 
  +        match infoOpt with
  +        | Some (checkResults,_parseResults) -> checkResults |> Some
           | None -> None
   
       member x.GetExtraColorizations() =
  
positive.code:           if opts.OtherOptions |> Seq.exists (fun s -> s.Contains("FSharp.Core.dll")) then opts
            else 
              // Add assemblies that may be missing in the standard assembly resolution
              Debug.WriteLine("GetScriptCheckerOptions: Adding missing core assemblies.")
              let dirs = FSharpEnvironment.getDefaultDirectories (None, FSharpTargetFramework.NET_4_5 )
              {opts with OtherOptions = [| yield! opts.OtherOptions
                                           match FSharpEnvironment.resolveAssembly dirs "FSharp.Core" with
                                           | Some fn -> yield sprintf "-r:%s" fn
                                           | None -> Debug.WriteLine("Resolution: FSharp.Core assembly resolution failed!")
                                           match FSharpEnvironment.resolveAssembly dirs "FSharp.Compiler.Interactive.Settings" with
                                           | Some fn -> yield sprintf "-r:%s" fn
                                           | None -> Debug.WriteLine("Resolution: FSharp.Compiler.Interactive.Settings assembly resolution failed!") |]}
          with e -> failwithf "Exception when getting check options for '%s'\n.Details: %A" fileName e
  
      // Print contents of check option for debugging purposes
  
negative.code:   
    /// Parses and checks the given file in the given project under the given configuration. Asynchronously
    /// returns the results of checking the file.
    member x.ParseAndCheckFileInProject(projectFilename, fileName:string, src, files, args, storeAst, ?startBgCompile) =
     let startBgCompile = defaultArg startBgCompile true
  
     async {
      let opts = x.GetCheckerOptions(fileName, projectFilename,  src, files , args)
      Debug.WriteLine(sprintf "LanguageService: ParseAndCheckFileInProject: Trigger parse (fileName=%s)" fileName)
  
      // storeAst is passed from monodevelop when it finds files with the same name in other projects. 
      // It will then ask for a reparse of all files in the second project. If storeAst = false, do nothing. 
      if not storeAst then return ParseAndCheckResults.Empty else
      let! results = mbox.PostAndAsyncReply(fun r -> fileName, src, opts, r)
      if startBgCompile then
          Debug.WriteLine(sprintf "LanguageService: Starting background compilations")
          checker.StartBackgroundCompile(opts)
      return results
     }
  
    member x.ParseFileInProject(projectFilename, fileName:string, src, args) = 
      let opts = x.GetCheckerOptions(fileName, projectFilename, src, [| |], args)
      Debug.WriteLine(sprintf "LanguageService: ParseFileInProject: Get untyped parse result (fileName=%s)" fileName)
      checker.ParseFileInProject(fixFileName fileName, src, opts)
  
    member internal x.TryGetStaleTypedParseResult(fileName:string, options, src, stale)  = 
  