-
Notifications
You must be signed in to change notification settings - Fork 20
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
Modules cannot depend on eachother inside of a pack. #142
Comments
What's confusing is that in the case where two builds are required, it looks like the correct build ordering:
|
And it's so strange because sometimes I receive different errors after cleaning/rebuilding:
|
Here's another error I've seen, doing the same
|
And sure enough, when I build with |
Bisecting progress: Seems to begin failing at this rev:
|
Can you create a minimal project that allows to reproduce the bug? |
A pull request to permanently commit? Sure, I'll try to send one later today. In the mean time, you can just add this line to
|
No need for a pull request, I have enough information to investigate the bug, thank you. I will fix it as soon as I come back from holiday. |
@jeromemaloberti : Did this get fixed then eventually, because the issue is still open and I seem to run into it in the 4.03 compiler. As the issues was mentioned to be fixed about a year ago, I thought I'd ask. Edit: Nevermind, I think what I ran into was really a correct usage of the remark concerning the directories. |
Funny that -j 1 has a different behaviour than without it. I thought -j 1 is the default. |
Ok. The main problem here is the name collision between src/a.ml and src/b/a.ml. If you rename either of them it will work. When I refactored the code to make the build more parallel it introduced indeterminism that broke this test (but the test is wrong anyway). |
Inside of
autopack/src/b/c.ml
, place the following line:And observe the error when compiling:
Then build a second time, and it works!
Then inside of
autopack/src/b/a.ml
, place the following line, and see that it compiles.There's clearly something going on here, where two builds are required for one direction of the dependency and one build is required for the other direction. I'm guessing it's because the correct ordering isn't determined by something like
ocamldep
for the files wihin a pack. Is this correct?The text was updated successfully, but these errors were encountered: