Follow-up Comment #4, bug #24867 (project guile): Thanks for the patch and test case!
A few remarks: 1. `scm_sym2var ()' must be changed to acquire the mutex before performing actual lookup. Thus, `scm_define ()' itself doesn't need to acquire it. I think this should be enough to fix the bug. It shouldn't slow things down too much, thanks to memoization. 2. The mutex can be declared as `static'. 3. In 1.9, we should perhaps avoid `scm_i_define_mutex' and use a per-module mutex (which isn't possible in 1.8 since it would break ABI). OTOH, is it really necessary to have such a fine grain? Can you provide an updated patch with ChangeLog-style entry? Ludo'. _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?24867> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/