@@ -116,7 +116,7 @@ module internal ParseAndCheck =
116116 SimulatedMSBuildReferenceResolver.getResolver(),
117117 defaultFSharpBinariesDir = FSharpCheckerResultsSettings.defaultFSharpBinariesDir,
118118 reduceMemoryUsage = ReduceMemoryFlag.Yes,
119- implicitIncludeDir = Path.GetDirectoryName( projectOptions.ProjectFileName),
119+ implicitIncludeDir = !! Path.GetDirectoryName( projectOptions.ProjectFileName),
120120 isInteractive = false ,
121121 isInvalidationSupported = true ,
122122 defaultCopyFSharpCore = CopyFSharpCoreFlag.No,
@@ -134,15 +134,14 @@ module internal ParseAndCheck =
134134 let dependencyProvider = new DependencyProvider()
135135 let! tcGlobals , tcImports =
136136 TcImports.BuildTcImports ( tcConfigP, dependencyProvider)
137- |> Async.AwaitNodeCode
138137
139138 // Handle type provider invalidation by resetting compiler state
140139 tcImports.GetCcusExcludingBase()
141140 |> Seq.iter ( fun ccu ->
142141 ccu.Deref.InvalidateEvent.Add( fun _ -> reset())
143142 )
144143
145- let assemblyName = projectOptions.ProjectFileName |> Path.GetFileNameWithoutExtension
144+ let assemblyName = !! Path.GetFileNameWithoutExtension( projectOptions.ProjectFileName )
146145 let tcInitial , openDecls0 = GetInitialTcEnv ( assemblyName, rangeStartup, tcConfig, tcImports, tcGlobals)
147146 let tcInitialState = GetInitialTcState ( rangeStartup, assemblyName, tcConfig, tcGlobals, tcImports, tcInitial, openDecls0)
148147
@@ -166,7 +165,7 @@ module internal ParseAndCheck =
166165 topAttrsOpt : TopAttribs option , tcImplFilesOpt : CheckedImplFile list option , compilerState ) =
167166 let assemblyRef = mkSimpleAssemblyRef " stdin"
168167 let access = tcState.TcEnvFromImpls.AccessRights
169- let symbolUses = Choice2Of2 TcSymbolUses.Empty
168+ let symbolUses = Choice2Of2 ( async { return seq { } })
170169 let dependencyFiles = parseResults |> Seq.map ( fun x -> x.DependencyFiles) |> Array.concat
171170 let getAssemblyData () = None
172171 let details = ( compilerState.tcGlobals, compilerState.tcImports, tcState.Ccu, tcState.CcuSig, symbolUses, topAttrsOpt,
@@ -313,12 +312,12 @@ type InteractiveChecker internal (compilerStateCache) =
313312 let ctok = CompilationThreadToken()
314313 let flatErrors = compilerState.tcConfig.flatErrors
315314 let errors , diagnosticsLogger , _loggerProvider = CompileHelpers.mkCompilationDiagnosticsHandlers( flatErrors)
316- let exitCode =
315+ let exnOpt =
317316 CompileHelpers.tryCompile diagnosticsLogger ( fun exiter ->
318317 CompileFromTypedAst ( ctok, compilerState.tcGlobals, compilerState.tcImports, tcState.Ccu,
319318 tcImplFiles, topAttrs, compilerState.tcConfig, outFile, diagnosticsLogger, exiter))
320319
321- return errors.ToArray(), exitCode
320+ return errors.ToArray(), exnOpt
322321 }
323322
324323 /// Parses and checks the whole project, good for compilers (Fable etc.)
0 commit comments