Hrvoje Niksic <hniksic(a)srce.hr> writes:
Raymond Toy <toy(a)rtp.ericsson.se> writes:
> Here's what happens to me on Solaris 2.5.1 with Mule and my standard
> config. (appended)
[...]
> mapconcat(char-to-string
I see that one too. It appears to be a memory corruption bug. I'm
trying to track it down, but any help will be gracefully accepted.
I can't reproduce this, but it looks similar to crashes Simon
Josefsson (in <ilulnipy61u.fsf(a)xiphias.pdc.kth.se>) and Colin Rafferty
(in <vgvogiwhqqz.fsf(a)ms.com>) have reported before.
Martin has rewritten mapcar1() last year. The changes relevant here
seem to be that fn and seq are no longer GCPRO'd as before (see
fns.c:3174 in 20.4) and that Ffuncall is used directly instead of
going via call1. This latter change implies that the two arguments
(the function and the element) are not GCPRO'd anymore (that's what
the callx functions do).
GCPROing should not be necessary because of "caller gcpros" but we are
not protecting in the caller either (Fmapconcat only protects its
third argument sep for some reason). Actually the caller of Fmapconcat
should do it (execute_optimized_program() presumably).
I suggest someone who *can* reproduce the problem adds some GCPROs and
checks whether they make a difference. Otherwise please post a
backtrace of a crash from a debug non-optimised build.
Martin, are you still reading xemacs-beta? any comments?
Gunnar
--
Gunnar Evermann
Speech, Vision & Robotics Group
Engineering Department
Cambridge University