GNU bug report logs -
#34525
replace-regexp missing some matches
Previous Next
Full log
View this message in rfc822 format
> Date: Wed, 27 Feb 2019 14:22:51 +0000
> Cc: Eli Zaretskii <eliz <at> gnu.org>, daniel.lopez999 <at> gmail.com,
> 34525 <at> debbugs.gnu.org
> From: Alan Mackenzie <acm <at> muc.de>
>
> if (! NULL_RIGHT_CHILD (i))
> {
> i = i->right;
> while (! NULL_LEFT_CHILD (i))
> i = i->left; <===============
>
> i->position = next_position;
> return i;
> }
>
> Here, in seeking the next interval, we go down a chain of `left's. We
> do not set the ->position field of these intervals, except for the last
> one, which we return.
The position field is just a cache, isn't it?
> So the returned interval doesn't satisfy the condition that all its
> parents have their ->position's set correctly. Thus if we use this
> interval as an argument to update_interval, we will likely fail. I
> think this can happen in update_syntax_table.
next_interval and previous_interval are used extensively, so I'm
having hard time believing that they have such a blatant bug.
This bug report was last modified 6 years and 86 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.