@@ -740,7 +740,7 @@ let ParseOneInputFile (tcConfig: TcConfig, lexResourceManager, fileName, isLastC
740740/// NOTE: this needs to be improved to commit diagnotics as soon as possible
741741///
742742/// NOTE: If StopProcessing is raised by any piece of work then the overall function raises StopProcessing.
743- let UseMultipleDiagnosticLoggers ( inputs , diagnosticsLogger , eagerFormat ) f =
743+ let UseMultipleDiagnosticLoggers (( inputs , diagnosticsLogger , eagerFormat ): 'a list * DiagnosticsLogger * ( PhasedDiagnostic -> PhasedDiagnostic ) option ) ( f : ( 'a * CapturingDiagnosticsLogger ) list -> 'b ): 'b =
744744
745745 // Check input files and create delayed error loggers before we try to parallel parse.
746746 let delayLoggers =
@@ -1060,11 +1060,18 @@ type TcState =
10601060 // a.fsi + b.fsi + c.fsi (after checking implementation file for c.fs)
10611061 member x.CcuSig = x.tcsCcuSig
10621062
1063+ member x.TcsImplicitOpenDeclarations = x.tcsImplicitOpenDeclarations
1064+
10631065 member x.NextStateAfterIncrementalFragment tcEnvAtEndOfLastInput =
10641066 { x with
10651067 tcsTcSigEnv = tcEnvAtEndOfLastInput
10661068 tcsTcImplEnv = tcEnvAtEndOfLastInput
10671069 }
1070+
1071+ member x.WithCreatesGeneratedProvidedTypes ( y : bool ) : TcState =
1072+ { x with
1073+ tcsCreatesGeneratedProvidedTypes = y
1074+ }
10681075
10691076/// Create the initial type checking state for compiling an assembly
10701077let GetInitialTcState ( m , ccuName , tcConfig : TcConfig , tcGlobals , tcImports : TcImports , tcEnv0 , openDecls0 ) =
@@ -1194,6 +1201,14 @@ let AddDummyCheckResultsToTcState
11941201
11951202 ( tcEnvAtEnd, EmptyTopAttrs, Some emptyImplFile, ccuSigForFile), tcState
11961203
1204+ type PartialResult = TcEnv * TopAttribs * CheckedImplFile option * ModuleOrNamespaceType
1205+
1206+ type CheckArgs = CompilationThreadToken * ( unit -> bool) * TcConfig * TcImports * TcGlobals * LongIdent option * TcState * ( PhasedDiagnostic -> PhasedDiagnostic) * ParsedInput list
1207+ /// Use parallel checking of implementation files that have signature files
1208+ let mutable CheckMultipleInputsInParallel2 : CheckArgs -> ( PartialResult list * TcState )
1209+ =
1210+ fun _ -> failwith " Dummy implementation"
1211+
11971212/// Typecheck a single file (or interactive entry into F# Interactive)
11981213let CheckOneInputAux
11991214 (
@@ -1433,9 +1448,6 @@ let CheckMultipleInputsSequential (ctok, checkForErrors, tcConfig, tcImports, tc
14331448 ( tcState, inputs)
14341449 ||> List.mapFold ( CheckOneInputEntry args)
14351450
1436-
1437- type PartialResult = TcEnv * TopAttribs * CheckedImplFile option * ModuleOrNamespaceType
1438-
14391451/// Use parallel checking of implementation files that have signature files
14401452let CheckMultipleInputsInParallel
14411453 (( ctok ,
@@ -1558,16 +1570,16 @@ type WorkInput =
15581570 }
15591571
15601572/// Use parallel checking of implementation files that have signature files
1561- let CheckMultipleInputsInParallel2
1562- (( ctok : CancellationToken ,
1573+ let CheckMultipleInputsInParallel3
1574+ (( ctok : CompilationThreadToken ,
15631575 checkForErrors : unit -> bool ,
15641576 tcConfig : TcConfig ,
15651577 tcImports : TcImports ,
15661578 tcGlobals : TcGlobals ,
15671579 prefixPathOpt ,
15681580 tcState ,
15691581 eagerFormat ,
1570- inputs ): CancellationToken * ( unit -> bool ) * TcConfig * TcImports * TcGlobals * LongIdent option * TcState * ( PhasedDiagnostic -> PhasedDiagnostic ) * ParsedInput list )
1582+ inputs ): CompilationThreadToken * ( unit -> bool ) * TcConfig * TcImports * TcGlobals * LongIdent option * TcState * ( PhasedDiagnostic -> PhasedDiagnostic ) * ParsedInput list )
15711583 : PartialResult list * TcState =
15721584
15731585 let _ = ctok // TODO Use
@@ -1758,6 +1770,7 @@ let CheckMultipleInputsInParallel2
17581770 partialResults, tcState
17591771 )
17601772
1773+
17611774let CheckClosedInputSet ( ctok , checkForErrors , tcConfig : TcConfig , tcImports , tcGlobals , prefixPathOpt , tcState , eagerFormat , inputs ) =
17621775 // tcEnvAtEndOfLastFile is the environment required by fsi.exe when incrementally adding definitions
17631776 let results , tcState =
0 commit comments