I am currently working on a project to implementing mutation-testing for F#. To access the FCS process I am using the FSharp.Compiler.Service package.
I am having some trouble with the compilation process and the compiled DLL.
I'm using FSharp.Compiler.Service to compile a project's AST's to
a dll. Another program references this dll. When compiled in visual studio everything works. When compiled from the AST's using compiler services I get method not found exceptions on every call.
an executable dll. However I always get the error entrypoint is not the last declaration. When inspecting what I pass to the compilation the entrypoint AST is the last AST in the list, and the entrypoint node is the last node in the AST. When compiling in visual studio there are no issues.
Has anyone encountered these issues before? Or knows a way to fix the errors I’m getting?
I have done this many times. You might want to post what the input arguments are when you are trying to compile, the lack of something in the input is often the cause for an error.
Updating from FSharp.Compiler.Service 37 to 38 has resolved the methodnotfound error
By hardcoding the islastcompiled in the parsedinput (syntaxtree) to Tuple(true,true) in the syntaxtree containing the entrypoint, the error doesn't trigger.
The islastcompiled solution is sketchy and I would like to have a better way to do this.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With