From 0771d8939adaacf0b9b41150be9c53e6b9519b04 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Sun, 24 Oct 2021 23:56:46 +0200 Subject: [PATCH] * etc/PROBLEMS: Mention problems with regexp matcher. (Bug#18577) --- etc/PROBLEMS | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/etc/PROBLEMS b/etc/PROBLEMS index ede83a6e7c0..daff102a0d3 100644 --- a/etc/PROBLEMS +++ b/etc/PROBLEMS @@ -742,6 +742,18 @@ completed" message that tls.el relies upon, causing affected Emacs functions to hang. To work around the problem, use older or newer versions of gnutls-cli, or use Emacs's built-in gnutls support. +*** Stack overflow in regexp matcher. +Due to fundamental limitations in the way Emacs' regular expression +engine is designed, you might run into combinatorial explosions in +backtracking with certain regexps. + +Avoid "\(...\(...\)*...\)*" and "\(...\)*\(...\)*". Look for a way to +anchor your regular expression, to avoid matching the null string in +infinite ways. The latter is what creates backtrack points, and +eventual overflow in practice. + +(Also prefer "\(?:...\)" to "\(...\)" unless you need the latter.) + * Runtime problems related to font handling ** Characters are displayed as empty boxes or with wrong font under X. -- 2.39.2