GNU bug report logs - #60352
30.0.50; Keep getting "Error in syntax_table logic for to-the-end intervals"

Previous Next

Package: emacs;

Reported by: Ihor Radchenko <yantar92 <at> posteo.net>

Date: Tue, 27 Dec 2022 09:43:01 UTC

Severity: normal

Found in version 30.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Ihor Radchenko <yantar92 <at> posteo.net>, 60352 <at> debbugs.gnu.org
Subject: bug#60352: 30.0.50; Keep getting "Error in syntax_table logic for to-the-end intervals"
Date: Tue, 27 Dec 2022 10:13:21 -0500
>> Debugger entered--Lisp error: (error "Error in syntax_table logic for to-the-end intervals")
>>   (re-search-forward "\\(?:\\(?:\\<DEADLINE: *\\(\\(?:<\\(?:[[:digit:]]\\{4\\}-[..." nil move)
>>
>> It only happens in Emacs 30 (master) and is not regular.
>>
>> The error sounds like some kind of internal error.

It is, indeed.

>> Does it signify some Emacs issue? Or may it be third-party code issue?

No, it's a bug in the C code somewhere.
Presumably somewhere between the `regexp-emacs.c` code and the
`syntax.c` code.

The regexp code keeps a global state in `gl_state` to speed up looks up
of the `syntax-table` text-property.  The above error indicates that
this global state is inconsistent for some reason.

Maybe we somehow ran a regexp search during the regexp search?
I know this can happen via the automatic calls to `syntax-propertize`,
but `syntax.c:parse_sexp_propertize` is careful to (re)call
`SETUP_SYNTAX_TABLE` after running ELisp code, so that shouldn't be the
source of the problem.

Maybe there's some other way to re-enter regexp search and that one
isn't careful to call `SETUP_SYNTAX_TABLE` before returning to the outer
regexp search?


        Stefan





This bug report was last modified 2 years and 153 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.