Subject: Re: bug#21474: emacs-25.0.50: compilation error in leim: Args out of

From: Rob Browning <[email-masked]>
Date: Sat, 26 Nov 2016 15:17:14 -0600

Eli Zaretskii <[email-masked]> writes:

> But those problems should have been solved, even without disabling
> REL_ALLOC, if Rob is building the current emacs-25 branch.  Right?

Well, Debian's on 25.1 (very few additional patches so far), so not the
tip of emacs-25.  But thanks to both of your help, and after reading
some of the related bugs, I looked over the changes since 25.1, and saw
what I think are the commits in question, commits that appear relevant
to this problem, and maybe to the other one.

But backing up -- with respect to Debian's version, the current Debian
package (25.1+1-2) should be the deb/emacs25/v/25.1+1-2 tag here:

  https://anonscm.debian.org/cgit/users/rlb/emacs.git/tag/?h=deb/emacs25/v/25.1%2b1-2

Which is effectively the 25.1 tree, after making adjustments for
Debian's DFSG issue, and applying these patches:

  https://anonscm.debian.org/cgit/users/rlb/emacs.git/tree/debian/patches?h=deb/emacs25/v/25.1%2b1-2

(Those patches are both in that directory, *and* applied to the working
tree you get if you check out that tag.)

That tree is the one that's been intermittently crashing, and I think
the only patch it has from upstream after 25.1 is the nopie fix.

In any case, after poking around in the newer emacs-25 commits (as
mentioned above), it seemed like applying these allocation related
patches might help:

  b6998ea * src/regex.h (re_match_object): Improve commentary.
  ad66b3f Fix handling of allocation in regex matching
  f6134bb Port to GCC 6.2.1 + --enable-gcc-warnings
  c2a1792 * src/regex.c (re_search_2): Make new code safe for -Wjump-misses-init.
  ee04aed Fix handling of buffer relocation in regex.c functions
  7bb5c4f Port --enable-gcc-warnings to bleeding-edge glibc
  1047496 Another fix for using pointer to buffer text
  96ac0c3 Yet another fix for using pointers into buffer text
  32827b3 Default REL_ALLOC to 'no'
  fee4cef Revert fixes to allocation of regex matching
  43986d1 Inhibit buffer relocation during regex searches
  0221b7a Mark relocation workarounds with REL_ALLOC

And indeed, with those, I've yet to see a crash, but as we know, they're
intermittent.  To help increase confidence, two others who have been
able to produce the crash are probably also going to test that tree
soon.

Of course, if y'all have some other way you'd like to see this handled,
I'd be more than happy to try to accommodate.

Thanks again
-- 
Rob Browning
rlb @defaultvalue.org and @debian.org
GPG as of 2011-07-10 E6A9 DA3C C9FD 1FF8 C676 D2C4 C0F0 39E9 ED1B 597A
GPG as of 2002-11-03 14DD 432F AE39 534D B592 F9A0 25C8 D377 8C7E 73A4