--- Begin Message ---
Subject: |
C Mode: C-M-a fails at BOD re_comp, src/regex.c L6534 |
Date: |
Thu, 5 Feb 2009 11:36:45 +0000 |
User-agent: |
Mutt/1.5.9i |
In .../src/regex.c put point at BOL6534, "char *" here:
}
WEAK_ALIAS (__re_compile_pattern, re_compile_pattern)
^L
/* Entry points compatible with 4.2 BSD regex library. We don't define
them unless specifically requested. */
#if defined _REGEX_RE_COMP || defined _LIBC
/* BSD has one and only one pattern buffer. */
static struct re_pattern_buffer re_comp_buf;
char *
<=================================
# ifdef _LIBC
/* Make these definitions weak in libc, so POSIX programs can redefine
these names if they don't use our functions, and still use
regcomp/regexec below without link errors. */
weak_function
# endif
re_comp (s)
const char *s;
{
Do C-M-a. Point doesn't move.
Preliminary investigation: With point on the 'h' of "char *",
(c-beginning-of-decl-1 nil) should move point one character backwards.
Instead, it moves to BOL "WEAK_ALIAS".
--
Alan Mackenzie (Nuremberg, Germany).
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#2203: C Mode: C-M-a fails at BOD re_comp, src/regex.c L6534 |
Date: |
22 Jan 2016 23:06:47 -0000 |
User-agent: |
tin/2.3.1-20141224 ("Tallant") (UNIX) (FreeBSD/10.2-RELEASE-p9 (amd64)) |
Bug fixed in branch emacs-25.
In article <address@hidden> you wrote:
> Alan Mackenzie <address@hidden> writes:
>> In .../src/regex.c put point at BOL6534, "char *" here:
>>
>> }
>> WEAK_ALIAS (__re_compile_pattern, re_compile_pattern)
>> ^L
>> /* Entry points compatible with 4.2 BSD regex library. We don't define
>> them unless specifically requested. */
>>
>> #if defined _REGEX_RE_COMP || defined _LIBC
>>
>> /* BSD has one and only one pattern buffer. */
>> static struct re_pattern_buffer re_comp_buf;
>>
>> char *
>> <=================================
>> # ifdef _LIBC
>> /* Make these definitions weak in libc, so POSIX programs can redefine
>> these names if they don't use our functions, and still use
>> regcomp/regexec below without link errors. */
>> weak_function
>> # endif
>> re_comp (s)
>> const char *s;
>> {
>>
>>
>> Do C-M-a. Point doesn't move.
>>
>> Preliminary investigation: With point on the 'h' of "char *",
>> (c-beginning-of-decl-1 nil) should move point one character backwards.
>> Instead, it moves to BOL "WEAK_ALIAS".
> I just tested this in Emacs 25 and it seems that in every case point
> moves back to "WEAK_ALIAS". That is, C-M-a, c-beginning-of-defun,
> behaves the same way as (c-beginning-of-decl-1 nil).
> I guess that makes it more broken, if more consistent, than when the bug
> was raised.
> --
> Alan Third
--
Alan Mackenzie (Nuremberg, Germany).
--- End Message ---