Eli Zaretskii writes: > >> +#ifdef emacs >> +#define STR_BASE_PTR(obj) \ >> + (NILP(obj)? current_buffer->text->beg : \ > ^ > Please leave a blank before the left parenthesis where indicated. > Also, another blank between the right parenthesis and the following > question mark. > >> + STRINGP (obj)? SDATA (obj) : \ > > Likewise here. Damn, I can't I believe I'm still making these formatting errors, there's got to be a way to catch these automatically. >> + It is used for looking up syntax properties, and also to recompute >> + pointers in case the object is relocated by GC. > > Not "by GC", but "as a side effect of calling malloc". Maybe it's a > good idea to also mention ralloc.c here. > >> + /* Get pointers and sizes of the two strings that make up the >> + visible portion of the buffer. Note that we can use pointers >> + here, unlike in search_buffer, because we only call re_match_2 >> + once. */ > > I'm not sure the reader will understand the significance of calling > re_match_2 only once. It would be good to clarify the comment. Okay, I've added some more explanations to these comments. > > Otherwise, I think this should go in. This is for emacs-25, right? Technically, the bug seems to be present in 24.5 and earlier, though I can only trigger it in 25.1.