Skip to content

Commit f88d5d4

Browse files
authored
Checker: fix options equality for il module reader references (#16161)
* Checker: fix options equality for il module reader references
1 parent a2c50d2 commit f88d5d4

File tree

1 file changed

+3
-9
lines changed

1 file changed

+3
-9
lines changed

src/Compiler/Service/FSharpCheckerResults.fs

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,8 @@ type FSharpReferencedProject =
127127
| :? FSharpReferencedProject as o ->
128128
match this, o with
129129
| FSharpReference (projectOutputFile1, options1), FSharpReference (projectOutputFile2, options2) ->
130-
projectOutputFile1 = projectOutputFile2 && options1 = options2
130+
projectOutputFile1 = projectOutputFile2
131+
&& FSharpProjectOptions.AreSameForChecking(options1, options2)
131132
| PEReference (getStamp1, reader1), PEReference (getStamp2, reader2) ->
132133
reader1.OutputFile = reader2.OutputFile && (getStamp1 ()) = (getStamp2 ())
133134
| ILModuleReference (projectOutputFile1, getStamp1, _), ILModuleReference (projectOutputFile2, getStamp2, _) ->
@@ -174,14 +175,7 @@ and FSharpProjectOptions =
174175
&& options1.UnresolvedReferences = options2.UnresolvedReferences
175176
&& options1.OriginalLoadReferences = options2.OriginalLoadReferences
176177
&& options1.ReferencedProjects.Length = options2.ReferencedProjects.Length
177-
&& (options1.ReferencedProjects, options2.ReferencedProjects)
178-
||> Array.forall2 (fun r1 r2 ->
179-
match r1, r2 with
180-
| FSharpReferencedProject.FSharpReference (n1, a), FSharpReferencedProject.FSharpReference (n2, b) ->
181-
n1 = n2 && FSharpProjectOptions.AreSameForChecking(a, b)
182-
| FSharpReferencedProject.PEReference (getStamp1, reader1), FSharpReferencedProject.PEReference (getStamp2, reader2) ->
183-
reader1.OutputFile = reader2.OutputFile && (getStamp1 ()) = (getStamp2 ())
184-
| _ -> false)
178+
&& options1.ReferencedProjects = options2.ReferencedProjects
185179
&& options1.LoadTime = options2.LoadTime
186180

187181
member po.ProjectDirectory = Path.GetDirectoryName(po.ProjectFileName)

0 commit comments

Comments
 (0)