anchor.diff:  
               yield sourceFile
           |]
  +
  +    ensureDefaultFSharpCoreAvailable tmp
           
       printfn "args: %A" args
       let errorInfo, id = compiler.Compile args
  
positive.code:     
      let outFile = Path.Combine(outDir, name + ".dll")
  
      let errors, id = compiler.Compile(ast, name, outFile, references, executable = false)
      for err in errors do printfn "error: %A" err
      Assert.AreEqual (errors.Length, 0)
  
negative.code: let checker = InteractiveChecker.Create()
  let compiler = new SimpleSourceCodeServices()
  
  /// Ensures the default FSharp.Core referenced by the F# compiler service (if none is 
  /// provided explicitly) is available in the output directory.
  let ensureDefaultFSharpCoreAvailable tmpDir  =
      // FSharp.Compiler.Service references FSharp.Core 4.3.0.0 by default.  That's wrong? But the output won't verify
      // or run on a system without FSharp.Core 4.3.0.0 in the GAC or in the same directory, or with a binding redirect in place.
      // 
      // So just copy the FSharp.Core 4.3.0.0 to the tmp directory. Only need to do this on Windows.
      if System.Environment.OSVersion.Platform = System.PlatformID.Win32NT then // file references only valid on Windows 
          File.Copy(fsCore4300(), Path.Combine(tmpDir, Path.GetFileName(fsCore4300())), overwrite = true)
  
  let compile isDll debugMode (assemblyName : string) (code : string) (dependencies : string list) =
      let tmp = Path.GetTempPath()
      let sourceFile = Path.Combine(tmp, assemblyName + ".fs")
  