-
-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Does bisect_ppx work with dynamic libraries #443
Comments
Is Bisect_ppx applied to the dynamic libraries when they are compiled (preprocessed, actually)? I think Bisect should support dynamic libraries, as long as they are also compiled with Bisect enabled. Do you have a small example of your setup? |
I compiled the dynamic library with the config "(instrumentation (backend bisect_ppx))" in plugin/dune file. I have made a tarball bisect_test.tar.gz of my minimized dune project that uses dynlink, for your convinience to see where I did wrong. dune build --instrument-with bisect_ppx run: cd _build/default
bin/main.exe plugin/plugin.cmxs |
Thank you! I downloaded the project and ran it with these commands:
This produced The output was
As far as I can tell, coverage analysis is working for both the main program and the loaded plugin. What happens when you run the same commands? |
Thank you! This time, I followed your instructions and succeeded—Bisect_ppx is working properly now. |
I have some questions about using bisect_ppx and was hoping you could help!
It works fine for regular library modules, and I can generate coverage files without any problems.
But when I try to use bisect_ppx with dynamic libraries (like .cmxs files) that are loaded into the main program using Dynlink, no coverage files get generated.
Any idea why this happens? Does bisect_ppx not support dynamic libraries yet?
The text was updated successfully, but these errors were encountered: