-
Notifications
You must be signed in to change notification settings - Fork 123
Closed
Labels
Description
If no FSharp.Core/mscorlib is referenced when using the "Compile" method in SimpleSourceCodeServices, then FSharp.Core 4.3.0.0 is referenced by default. This has been the cause of some failures on Appveyor.
See https://github.com/fsharp/FSharp.Compiler.Service/blob/13982fa12e0bacaa91e16cced40776fbeb1f77ff/src/fsharp/build.fs#L1563 (FSharp.Compiler.Service.dll itself references FSharp.Core 4.3.0.0, making it usable as widely as possible)
Ramifications:
- programs compiled with FCS using the implicit default FSharp.Core can't be run on machines where FSharp.Core 4.3.0.0 aren't in the GAC (e.g. machines with only VS2013 installed).
- the behavior of "FscTest.exe" in FCS differs from the behavior of "fsc.exe" in F# 3.1
FCS should probably default to referencing the version of FSharp.Core in the process hosting FCS, rather than the version referenced in the DLL (these may be different via a binding redirect)