> Since a recent VS update, we've noticed PEVerify seems to fail on assemblies produced by the FSharp compiler.
Correct, but this DLL, when compiled normally, creates PE-verifiable IL code.
> It's likely this is a known problem within MS by now.
Yes, it is. Indeed, there are quite a few reported bugs. On a most recent one from myself
https://github.com/dotnet/fsharp/issues/7854 (on a very minor issue), part of the answer by Phillip Carter from Microsoft struck me:
"PEVerify isn't something we've strived to be compliant with for either F# or C# for quite some time now.", suggesting that this is not only an F# issue anymore now.
But in this particular case:
1) the user-code DLLs are PE-verifiable
2) the system libraries and FSharp.Core.dll are PV-verifiable (but I don't think you instrument them?)
3) instrumentation is possible: legacy works, and so does ANTS.
> The ugly thing here is that trace logs aren't enough for us to reproduce and resolve a problem like this.
I understand. Do you need the source code, or does testing the instrumentation bug only require the compiled DLL? I can easily send either to you. Bringing it down to a small sample will be hard, though, after compilation this is currently 5+MB for the X.Common.dll alone. And all other projects in the same solution currently "just work".