Subject: bug#4209: 23.1; Emacs 23.1 regression in re-search-forward

From: Chong Yidong <[email-masked]>
Date: Tue, 26 Jan 2010 15:38:33 -0500

Hi Handa-san,

Could you try to investigate Bug#4209?  I took a quick look, and the
contents of the Lisp string passed to Fre_search_forward in Emacs 23 is

$2 = (struct Lisp_String *) 0x86765b8
"\\`\302L\357w\306i\214\n"

but in Emacs 22 (where this test works) it's

$2 = (struct Lisp_String *) 0x86290e8
"\\`\302L\357w\306i\236\254\n"

which seems a little strange to me.

> I've found a regression in Emacs 23.1 (versus Emacs 22.3).  I've
> narrowed it down to this test case:
>
> ;--- re-bug.el starts here
> (set-buffer (get-buffer-create "*Test Buffer*"))
>
> (insert "\xC2\x4C\xEF\x77\xC6\x69\x8C\x0A")
>
> (goto-char (point-min))
>
> (message "looking-at: %s" (looking-at "\\`\xC2\x4C\xEF\x77\xC6\x69\x8C\x0A"))
>
> (message "re-search-forward: %s"
>          (re-search-forward "\\`\xC2\x4C\xEF\x77\xC6\x69\x8C\x0A" 100 t))
> ;--- re-bug.el ends here
>
> Then at the command line:
>
> $ emacs-22 --batch -Q -l re-bug.el
> looking-at: t
> re-search-forward: 9
>
> $ emacs-23 --batch -Q -l re-bug.el
> looking-at: t
> re-search-forward: nil