Hello,
This is not actually that big a deal. But, let's say I compile a file:
(compile-file "/tmp/test-gambit-compiler/test-a.scm")
#t
Then load the resulting object file:
(load "/tmp/test-gambit-compiler/test-a")
"/tmp/test-gambit-compiler/test-a.o1"
OK, I wanna recompile it, but not have a bunch of old versions laying around. So delete the o1 file:
(delete-file "/tmp/test-gambit-compiler/test-a.o1")
And recompile:
(compile-file "/tmp/test-gambit-compiler/test-a.scm")
#t
An error occurs if you try to load the new object file:
(load "/tmp/test-gambit-compiler/test-a")
*** ERROR IN (console)@5.1 -- Can't load a given object file more than once (load "/tmp/test-gambit-compiler/test-a") 1>
Sure, I understand that Gambit is preventing a reload of the exact same object file. But it must be doing a very simple accounting based on the name of the object file. Perhaps you can employ that newfangled high-performance file digest code that was recently shared. ;-)
Anywho, no big deal. But it's a surprise.
Ed