Subject: Re: bug#3650: M-x gdb unusable on Windows

From: Kenichi Handa <[email-masked]>
Date: Tue, 23 Jun 2009 22:22:05 +0900

In article <[email-masked]>, [email-masked] (Nick Roberts) writes:

> >> By the way, I also installed gdb-6.8-mingw-3.tar.bz2.  But,
> >> with "M-x gdb", pp and pr commands doesn't work.  They print
> >> nothing.  They do work when gdb is invoked from command
> >> line.  Do you know what is wrong?

> Are you sure they print nothing or is it just that the output isn't
> being flushed?  The commentary in gdb-ui.el has some advice about using
> Emacs and GDB on Windows:

>   ;; If you are using Emacs and GDB on Windows you will need to flush the buffer
>   ;; explicitly in your program if you want timely display of I/O in Emacs.
>   ;; Alternatively you can make the output stream unbuffered, for example, by
>   ;; using a macro:

>   ;;           #ifdef UNBUFFERED
>   ;;	     setvbuf (stdout, (char *) NULL, _IONBF, 0);
>   ;;	     #endif

>   ;; and compiling with -DUNBUFFERED while debugging.

Thank you for the info.  When I added "fflush (stderr);" at
the end of the function debug_print, pp and pr commands
started to work on Windows (mingw).

But, still C-c C-n in *gud* buffer, C-x C-a C-b in a source
file buffer don't work.

When I type C-c C-n in *gud* buffer,
  "error in process filter: Unexpected `starting' annocation"
is shown in the echo area, and no command is accepted here
after.

When I type C-x C-a C-b in a source file buffer, the gdb
prompt in *gud* buffer is erased, and any further commands
in *gud* just show the same output as "br info", and the
menu bar keep flushing.

---
Kenichi Handa
[email-masked]