On Tue, 2023-11-28 at 22:11 +0100, Jean Abou Samra wrote: > Le dimanche 29 octobre 2023 à 10:51 +0100, Jonas Hahnfeld a écrit : > > while playing with current Guile main on Windows, I found some problems > > in the implementation of custom-ports that was recently committed. > > Please consider the attached patches. > > Not a Guile maintainer obviously, but: could you explain what the first > patch is for? It's not going to hurt, but I don't see what problem it fixes. Sure: It makes sure that the extension is loaded also when not having a compiled custom-ports.go. For reference, see the documentation at https://www.gnu.org/software/guile/manual/html_node/Eval-When.html - the previously specified (load) only acts when loading a compiled module. During my tests, when chasing an incompatibility with the compiled bytecode, I was experimenting with just deleting some bytecode files. In that case, Guile should transparently fall back to evaluating the code. Which it did, only that the extension wasn't loaded and it complained loudly about unavailable symbols. So the solution is to at least specify (eval) for non-compiled code, but then the documentation mentions: "When in doubt, use the three conditions (expand load eval), as in the example above. Other uses of eval-when may void your warranty or poison your cat." This also matches all other uses of eval-when in the Guile source code itself. Let me know if I should try to improve the patch message. Jonas