Subject: bug#23999: 25.0.95; Emacs hangs in rectangle-mark-mode with numeric prefix argument to `C-f'

From: [email-masked] (N. Jackson)
Date: Fri, 15 Jul 2016 19:25:52 -0300

emacs -Q
C-<home>	; Go to top left corner of scratch buffer.
C-x <SPC>	; Start a rectangular selection.
C-3 C-f		; Extend the selection to the right by 3 characters.

Expected result:  Emacs creates a rectangular selection one character
high and three characters wide.

Actual result:  Emacs hangs. (C-g quits.)

With debug-on-quit on, I then get:

    Debugger entered--Lisp error: (quit)
      rectangle--*-char(forward-char 3 backward-char)
      rectangle-forward-char(3)
      funcall-interactively(rectangle-forward-char 3)
      call-interactively(rectangle-forward-char nil nil)
      command-execute(rectangle-forward-char)

On the other hand, the following recipe works as expected:

emacs -Q
C-<home>	; Go to top left corner of scratch buffer.
C-x <SPC>	; Start a rectangular selection.
C-f C-f C-f	; Extend the selection to the right by 3 characters.

Note 1:  The exact position in the scratch buffer seems to be unimportant.

Note 2:  `C-n' with a numeric prefix argument seems to work fine to extend
the rectangular region downwards.

Note 3: I see this with the Emacs 25.0.95 pre-test tarball [and with the
25.0.90 pre-test for that matter]. The problem is still present in the
Emacs 25 branch as of earlier this afternoon. I do not see the problem
with Emacs 24.5.

Please let me know if any further information is required. Thanks.

In GNU Emacs 25.0.95.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.18.9)
 of 2016-07-15 built on moondust
Repository revision: 916abe91fd250fc5ed27ec0be7d57421e7908111
Windowing system distributor 'Fedora Project', version 11.0.11803000
System Description:	Fedora release 23 (Twenty Three)

Configured using:
 'configure --prefix=/home/nlj/local/ --enable-checking=yes,glyphs
 --enable-check-lisp-object-type 'CFLAGS=-O2 -g3 -gdwarf-4''

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GCONF GSETTINGS NOTIFY
ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11

Important settings:
  value of $LC_MONETARY: en_DK.utf8
  value of $LC_NUMERIC: en_DK.utf8
  value of $LC_TIME: en_DK.utf8
  value of $LANG: en_CA.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix