APPROVE COMMIT 21.5
On Wed, Nov 5, 2014 at 3:51 PM, Jerry James <james(a)xemacs.org> wrote:
This patch fixes a collection of miscellaneous problems that break
the
build with g++ 4.8.3. Thanks to Mats for pointing out two of the
problems. I think the contents of this patch are fairly
straightforward, with the exception of the changes to XSTRING_LENGTH
and XSTRING_DATA. Before I made those changes, g++ 4.8.3 complained
about a possibly uninitialized anonymous value in both alloc.c and
fileio.c. I looked briefly at the code, thought it looked okay and
that g++ must have lost its marbles, and continued on. Then, after
building temacs, it segfaulted while loading lisp, at the exact line
in fileio.c where one of the warnings was issued. More digging showed
that g++ was creating anonymous temporaries, and not initializing
them, instead of using the parameters that I thought it should access.
Very weird. I don't understand what is going on there. It may be a
bug in g++ 4.8.3, but on the other hand, those macros evaluate their
arguments multiple times, which may have something to do with the
problem. Anyway, let me know if you object to this solution.
Given Mat's tacit approval on xemacs-beta, I have committed and pushed
this patch. If anybody is unhappy about the XSTRING_LENGTH and
XSTRING_DATA change, let me know and we can explore other possible
solutions.
--
Jerry James
http://www.jamezone.org/
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches