>
No, on Posix systems we can delete the file, and it will be actually
> deleted when its last handle is closed. I believe this works with
> shared libraries as well.
Do we actually do it? I don't think so. I don't even know where exactly
that check should be. Maybe `eval-buffer`?
> It's the same problem, yes. Just a slightly different use case, which
> could therefore have different probabilities for some aspects. For
> example, the probability of the same .el file being recompiled from
> two separate sessions is relatively small, except when you consider
> the "make -jN" use case.
The probability of two Emacs recompiling the same file in the "make -jN" case is
0. That is because the build system tells each Emacs to compile one and only one
file that is passed as a parameter. See #41329 for a bug related to this.
The case of two Emacs sessions recompiling the same file at the same time is
actually a problem.
We could implement the following algorithm:
- Have libgccjit write the .eln to a temporary name in the destination folder.
- While "foo.eln" exists:
- Rename it to "foo.eln.oldN".
- Move the new .eln file to "foo.eln"
Nicolas