emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debbugs-tracker] bug#22146: closed (Stack overflow in reftex-parse-all)


From: GNU bug Tracking System
Subject: [debbugs-tracker] bug#22146: closed (Stack overflow in reftex-parse-all)
Date: Sun, 13 Dec 2015 18:56:01 +0000

Your message dated Sun, 13 Dec 2015 19:55:22 +0100
with message-id <address@hidden>
and subject line Re: bug#22146: Stack overflow in reftex-parse-all
has caused the debbugs.gnu.org bug report #22146,
regarding Stack overflow in reftex-parse-all
to be marked as done.

(If you believe you have received this mail in error, please contact
address@hidden)


-- 
22146: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22146
GNU Bug Tracking System
Contact address@hidden with problems
--- Begin Message --- Subject: Stack overflow in reftex-parse-all Date: Fri, 11 Dec 2015 22:03:24 +0100
Dear all,

I encounter the error "Stack overflow in regexp matcher" if I apply the
function reftex-parse-all to the following file:

\documentclass{article}
\begin{document} 
[\}
foo foo foo foo foo foo foo foo foo foo foo foo foo foo foo foo foo
...
foo foo foo foo foo foo foo foo foo foo foo foo foo foo foo foo foo
\end{document}

Here ... stands for 500 copies of the line above. The file can be
compiled successfully with pdflatex.

I am using the Debian packages emacs24 24.5+1-3 and auctex 11.88-1.1.
The same error also occurs with different versions.

In case you are wondering, the non-matching brackets [\} appear for
example in physics as so-called "super Lie brackets".

Best
Nils



--- End Message ---
--- Begin Message --- Subject: Re: bug#22146: Stack overflow in reftex-parse-all Date: Sun, 13 Dec 2015 19:55:22 +0100 User-agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/25.0.50 (gnu/linux)
David Kastrup <address@hidden> writes:

>> Isn't the syntax "\\[[^]]\\{0,1000\\}\\<label"?  I tried going up to
>> a maximum of 30000 and it still didn't overflow, so I think that's an
>> appropriate fix (say, maybe 2000 instead of 1000 to be extra safe).
>> Feel free to change `reftex-label-regexps' accordingly.
>>
>> Interestingly, "x\\{0,40000\\}" gives an error:
>>
>>   (invalid-regexp "Invalid content of \\{\\}")
>>
>> So there seems to be a (pretty random) limit...
>
> I'd guess that the regexp library translates this into a "short", so
> the limit would be SHORT_MAX, namely 32767.

(re-search-forward "x\\{0,32767\\}") => works
(re-search-forward "x\\{0,32768\\}") => error

Yup, of course you're right.

Anyway, I'm closing this bug with the recent emacs/reftex commit which
looks at a label=... at most 2000 chars after the opening [.

Bye,
Tassilo


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]