Subject: bug#7227: re-search-forward goes infinite loop with dash inside []

From: Andreas Röhler <[email-masked]>
Date: Sat, 16 Oct 2010 13:39:08 +0200

Am 16.10.2010 11:16, schrieb Jari Aalto:
> Package: emacs Version: 23.2+1-4 Severity: normal
>
> Executing the following code causes Emacs to go into infinite loop.
> Simply run it behind the last paren with C-x C-e
>
> (re-search-forward "^\\([a-z0-9.-]+\\)+[ \t]+\\([0-9]+\\)
> +\\([a-z].*\\)") ==========
>
> If the dash is taken awy from the "[a-z0-9.-]", this code does not
> cause infinite loop:
>
> (re-search-forward "^\\([a-z0-9.]+\\)+[ \t]+\\([0-9]+\\)
> +\\([a-z].*\\)")
>
> TEST ROWS FOR THE REGEXPS:
>
> row-one 1234 rest of line
>
> row2    1234 rest of line
>
> TEST SETUP
>
> emacs -Q --no-site-file <copy the re-search-forward lisp statements
> into buffer> <copy the test rows into buffer> <Execute lisp
> statements>
>
> -- System Information Debian Release: squeeze/sid APT Prefers
> testing APT policy: (990, testing) (500, unstable) (1, experimental)
> Architecture: amd64 Kernel: Linux picasso 2.6.32-5-amd64 #1 SMP Fri
> Sep 17 21:50:19 UTC 2010 x86_64 GNU/Linux Locale: LANG=en_DK.UTF-8
>
> -- Versions of packages `emacs depends on'. Depends: emacs23
> 23.2+1-4        GNU Emacs is the extensible self-documenting
> emacs23-lucid   23.2+1-4        GNU Emacs is the extensible
> self-documenting emacs23-nox     23.2+1-4        GNU Emacs is the
> extensible self-documenting
>
>
>
>

Hi,

can't reproduce this with

GNU Emacs 23.1.1 (i586-suse-linux-gnu, GTK+ Version 2.20.1) of 2010-07-05

in scratch buffer I get an error immediatly:

Debugger entered--Lisp error: (search-failed "^\\([a-z0-9.-]+\\)+[
]+\\([0-9]+\\) +\\([a-z].*\\)")
   re-search-forward("^\\([a-z0-9.-]+\\)+[ 	]+\\([0-9]+\\) +\\([a-z].*\\)")
   eval((re-search-forward "^\\([a-z0-9.-]+\\)+[ 	]+\\([0-9]+\\)
+\\([a-z].*\\)"))
   eval-last-sexp-1(nil)
   eval-last-sexp(nil)
   call-interactively(eval-last-sexp nil nil)

Thanks for tiny-tools BTW.

Andreas

--
https://code.launchpad.net/~a-roehler/python-mode/python-mode-components
https://code.launchpad.net/s-x-emacs-werkstatt/