Subject: bug#13303: 24.2.91; gdb under emacs broken for break commands

From: Stephen Leake <[email-masked]>
Date: Fri, 28 Dec 2012 23:04:21 -0500

This bug report will be sent to the Bug-GNU-Emacs mailing list
and the GNU bug tracker at debbugs.gnu.org.  Please check that
the From: line contains a valid email address.  After a delay of up
to one day, you should receive an acknowledgment at that address.

Please write in English if possible, as the Emacs maintainers
usually do not have translators for other languages.

Please describe exactly what actions triggered the bug, and
the precise symptoms of the bug.  If you can, give a recipe
starting from `emacs -Q':

create file hello.c:
#include <stdio.h>
int main (int argc, char *argv[])
{
   printf ("hello world\n");

   return 0;
} /* end main */

compile it, with gcc (Debian 4.7.2-4) 4.7.2:
gcc -g -o hello hello.c

run it:
./hello

debug it:
M-x gdb
Run gdb (like this): gdb -i=mi hello

at the gdb prompt, set a breakpoint:
break hello.c:4

try to set commands:
command 1

should see a prompt, terminate by 'end'. Instead, see:
(gdb) command 1
Type commands for breakpoint(s) 1, one per line.
End with a line saying just "end".
p argc
end
p argc
end
(gdb)

This was terminated by Menu | Signals | EOF

On Windows 7, the behavior is slightly different; the '>' prompt is
visible, but EOF crashes gdb.

In GNU Emacs 24.2.91.1 (i686-pc-linux-gnu, GTK+ Version 2.24.10)
 of 2012-12-28 on Shevek
Windowing system distributor `The Cygwin/X Project', version 11.0.11301000
System Description:	Debian GNU/Linux testing (wheezy)

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Debugger

Minor modes in effect:
  shell-dirtrack-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
w <backspace> SPC w o r l d " ) ; <return> { <S-backspace>
} C-x C-s C-x 2 M-x s h e l l <return> l s SPC * .
c <return> g c c SPC h e l l o w . <backspace> <backspace>
. c <return> <C-up> <return> . / h e l l o <return>
l s <return> . / a . o u t <return> C-x o <up> <left>
<left> <down> <left> <down> <left> <left> <left> <left>
\ n M-x r e v i e <backspace> <backspace> e r t - b
u f f e r <return> y e s <return> <down> <down> <down>
<right> <right> <right> <right> <right> <right> <right>
<right> \ n C-x C-s C-x o M-x g d b C-g g c c <up>
<down> <C-up> <C-up> <C-up> <C-up> <left> <left> <left>
<left> <left> <left> <left> - g SPC - o SPC h e l l
o SPC <return> . / h e l l o <return> r m SPC a . o
u t <return> M-x g d b <return> <backspace> <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
<backspace> <backspace> <backspace> h e l l o <return>
C-x p b r e a k SPC h e l l o w . <backspace> <backspace>
. c : C-x o C-x o 4 <return> c o m m a n d SPC 1 <return>
p SPC a r g c <return> e n d <return> <help-echo> <help-echo>
<help-echo> <help-echo> <help-echo> <help-echo> <help-echo>
<menu-bar> <signals> <eof> <help-echo> <help-echo>
<help-echo> M-x b u g - r e p <tab> <backspace> <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
r e p o r t <tab> <return>

Recent messages:
History item: 1
hello.c changed on disk; really edit the buffer? (y, n, r or C-h) n
ask-user-about-supersession-threat: File changed on disk: /home/Projects/opentoken/org.opentoken/Build/linux_release/hello.c
Saving file /home/Projects/opentoken/org.opentoken/Build/linux_release/hello.c...
Wrote /home/Projects/opentoken/org.opentoken/Build/linux_release/hello.c
Quit
History item: 1
History item: 2
History item: 3
History item: 4

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message cl-macs gv format-spec
rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils shell pcomplete cc-langs cl cc-mode
cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars
cc-defs ada-mode advice help-fns cl-lib advice-preload easymenu compile
which-func imenu align find-file gdb-mi bindat json gud easy-mmode
comint ansi-color ring vc-dispatcher vc-mtn make-mode time-date tooltip
ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd
fontset image regexp-opt fringe tabulated-list newcomment lisp-mode
register page menu-bar rfn-eshadow timer select scroll-bar mouse
jit-lock font-lock syntax facemenu font-core frame cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
minibuffer loaddefs button faces cus-face macroexp files text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)