unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* 23.1.50; gdb mode screwup when setting breakpoint
@ 2009-08-20 11:31 Miles Bader
  2009-08-20 12:18 ` Nick Roberts
  0 siblings, 1 reply; 5+ messages in thread
From: Miles Bader @ 2009-08-20 11:31 UTC (permalink / raw)
  To: emacs-devel

[I sent this yesterday also, but I'm forwarding this to emacs-devel,
since I dunno where emacs-pretest-bug ends up or if anybody reads it]

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:


   (1) start emacs, with -Q

   (2) start gdb on an executable in the current dir; let's say it's
       called "foo", and is the most recent excutable in that dir, so
       gdb chooses it by default:

         M-x gdb RET

   (3) split the current window:

         C-x 2

   (3) Visit the source file containing the "main" function, and move to
       some source line in that function:

         C-x C-f foo.c RET
         C-n ...

   (4) Set a breakpoint on that line:

         C-x SPC

   (5) **** Note that the "(gdb) " prompt in the *gud-foo* buffer has
       disappeared!  Weird... but let's continue

   (6) Select the other window, where the *gud-foo* buffer is:

         C-x o

   (7) Try to run the program, even though the prompt is gone:

         run RET

   (8) **** The following error messages are given (these lines are from
       the *Messages* buffer):

         error in process filter: gdb-starting: Unexpected `starting' annotation
         error in process filter: Unexpected `starting' annotation

       Also note that for some reason, the "run" command caused a
       breakpoint list to be displayed in the *gud-foo* buffer, and that
       now there's a prompt again!

   (9) Try to run again, using "run RET"; this time it works (after you
       answer "y" to the gdb query), and correctly stops at the
       breakpoint you set.


Thanks,

-miles



If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/usr/local/share/emacs/23.1.50/etc/DEBUG for instructions.


In GNU Emacs 23.1.50.32 (x86_64-unknown-linux-gnu, GTK+ Version 2.16.5)
 of 2009-08-19 on dhlpc061
Windowing system distributor `The X.Org Foundation', version 11.0.10603000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: ja_JP.UTF-8
  value of $XMODIFIERS: @im=SCIM
  locale-coding-system: utf-8-unix
  default-enable-multibyte-characters: t

Major mode: Diff

Minor modes in effect:
  diff-auto-refine-mode: t
  show-paren-mode: t
  recentf-mode: t
  rcirc-track-minor-mode: t
  minibuffer-electric-default-mode: t
  display-time-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  temp-buffer-resize-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-j <escape> g C-p C-k C-n C-p C-p C-e C-p C-b C-e 
C-b C-b C-j C-j <escape> g C-p C-k <down-mouse-1> <mouse-1> 
C-p C-p C-p C-p C-p C-p C-p C-p C-n M-b M-b M-b M-b 
M-b M-b M-b <escape> f <backspace> SPC v e r y <escape> 
d <escape> d SPC n i c e C-n C-a C-d a C-n C-e C-b 
C-b C-b C-b C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-u C-p C-u C-p C-u C-p C-u C-p C-p C-e 
M-h s o m e <escape> g C-a C-n C-c C-c <return> q K 
g p p = SPC q n p p p p p p p p p p p p p p p p p n 
n n p p p p p p p p p p p p p p p p p p p p p p p p 
p p p p p p p p <escape> x r c SPC <return> <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <switch-frame> 
<switch-frame> C-c C-SPC C-c C-q q SPC <return> h i 
SPC : ( ) <backspace> <backspace> ) <return> C-c C-SPC 
C-c C-SPC <down-mouse-1> <mouse-movement> <mouse-1> 
C-c C-SPC C-x d C-x d C-x d C-c C-SPC n n n n n C-v 
C-v g <down-mouse-4> <mouse-4> <double-down-mouse-4> 
<double-mouse-4> <triple-down-mouse-4> <triple-mouse-4> 
<triple-down-mouse-4> <triple-mouse-4> <triple-down-mouse-4> 
<triple-mouse-4> C-c C-SPC h e y a <return> w h a t 
SPC d o i n ? <return> C-c C-SPC C-c C-SPC C-u C-u 
C-p C-u C-p C-n = SPC n q n n n n n n n n n n n n n 
n n n n n n <switch-frame> <escape> x g d b C-g <switch-frame> 
<switch-frame> <switch-frame> <switch-frame> <down-mouse-1> 
<mouse-movement> <mouse-1> <escape> x r e p o r t SPC 
<return>

Recent messages:
Reading active file via nnml...done
Checking new news...done
Retrieving newsgroup: nntp+news.gmane.org:gmane.emacs.devel...
Fetching headers for nntp+news.gmane.org:gmane.emacs.devel...done
Suppressing duplicates...done
Scoring...done
Sorting articles...done
Generating summary...done
Waiting for async article...
x*DING* 
Quit

Load-path shadows:
/home/soft1/miles/.emacs.d/elpa/lua-mode-20070608/lua-mode hides /usr/local/share/emacs/site-lisp/lua-mode
/usr/share/emacs22/site-lisp/dictionaries-common/ispell hides /usr/local/share/emacs/23.1.50/lisp/textmodes/ispell
/usr/share/emacs22/site-lisp/dictionaries-common/flyspell hides /usr/local/share/emacs/23.1.50/lisp/textmodes/flyspell
~/src/elisp/timer hides /usr/local/share/emacs/23.1.50/lisp/emacs-lisp/timer

-- 
The car has become... an article of dress without which we feel uncertain,
unclad, and incomplete.  [Marshall McLuhan, Understanding Media, 1964]




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: 23.1.50; gdb mode screwup when setting breakpoint
  2009-08-20 11:31 23.1.50; gdb mode screwup when setting breakpoint Miles Bader
@ 2009-08-20 12:18 ` Nick Roberts
  2009-08-24  6:23   ` Miles Bader
  0 siblings, 1 reply; 5+ messages in thread
From: Nick Roberts @ 2009-08-20 12:18 UTC (permalink / raw)
  To: Miles Bader; +Cc: emacs-devel

 > ...
 >    (5) **** Note that the "(gdb) " prompt in the *gud-foo* buffer has
 >        disappeared!  Weird... but let's continue
 > 
 >    (6) Select the other window, where the *gud-foo* buffer is:
 > 
 >          C-x o
 > 
 >    (7) Try to run the program, even though the prompt is gone:
 > 
 >          run RET
 > 
 >    (8) **** The following error messages are given (these lines are from
 >        the *Messages* buffer):
 > 
 >          error in process filter: gdb-starting: Unexpected `starting' annotation
 >          error in process filter: Unexpected `starting' annotation

That is weird because annotations aren't used for the gdb mode in 23.1.50.
Do you have an old gdb-ui.elc lying around that gets autoloaded?

-- 
Nick                                           http://www.inet.net.nz/~nickrob




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: 23.1.50; gdb mode screwup when setting breakpoint
  2009-08-20 12:18 ` Nick Roberts
@ 2009-08-24  6:23   ` Miles Bader
  2009-08-24 20:12     ` Dmitry Dzhus
  0 siblings, 1 reply; 5+ messages in thread
From: Miles Bader @ 2009-08-24  6:23 UTC (permalink / raw)
  To: Nick Roberts; +Cc: emacs-devel

nickrob@snap.net.nz (Nick Roberts) writes:
> That is weird because annotations aren't used for the gdb mode in 23.1.50.
> Do you have an old gdb-ui.elc lying around that gets autoloaded?

Hmm, indeed there is a file "lisp/progmodes/gdb-ui.elc" in my source
tree (though there's no corresponding .el file).  I guess that gets
copied during installation into the load-path.

Removing that file, and trying again, I get a _different_ error ... :)

   error in process filter: gdb-table-string: Symbol's function definition is void: mapcar*

If I then manually do (require 'cl), and try again, things seem to work
(at least the test case I sent earlier does).

Thanks,

-Miles

-- 
We have met the enemy, and he is us.  -- Pogo




^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: 23.1.50; gdb mode screwup when setting breakpoint
  2009-08-24  6:23   ` Miles Bader
@ 2009-08-24 20:12     ` Dmitry Dzhus
  2009-08-25  1:02       ` Miles Bader
  0 siblings, 1 reply; 5+ messages in thread
From: Dmitry Dzhus @ 2009-08-24 20:12 UTC (permalink / raw)
  To: emacs-devel; +Cc: Nick Roberts, Miles Bader

Miles Bader wrote:

> error in process filter: gdb-table-string: Symbol's function definition is void: mapcar*

Yup, sorry about this. I've (finally) fixed this in trunk, so the code
doesn't use mapcar* anymore.

This function was utilized by small code which aligns text in columns.

I decided just to write a replacement for mapcar* which I think mimics
its notorious parent pretty closely, at least in my case.

Perhaps someone may have some comments about it:

    (defun gdb-mapcar* (function &rest seqs)
      "Apply FUNCTION to each element of SEQS, and make a list of the results.
    If there are several SEQS, FUNCTION is called with that many
    arugments, and mapping stops as sson as the shortest list runs
    out."
      (let ((shortest (apply #'min (mapcar #'length seqs))))
        (mapcar (lambda (i)
                  (apply function
                         (mapcar
                          (lambda (seq)
                            (nth i seq))
                          seqs)))
                (number-sequence 0 (1- shortest)))))

(docstring is just copied from cl's mapcar*).

I've grepped through other packages and discovered that there's a
gnus-mapcar macro (so big!) which seems to be a replacement for mapcar*
as well. I was thinking about defaliasing it and using for my code, but
fixme comment about gnus-mapcar in gnus-util.el says that

    ;; Fixme: This has only one use (in gnus-agent), which isn't worthwhile.

I'm not sure about its meaning, but probably it's safer to use a
homebrewn version in `gdb-mi.el`. Also having a debugger interface
depend on gnus-util package sounds weird.
-- 
Happy Hacking.

http://sphinx.net.ru^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: 23.1.50; gdb mode screwup when setting breakpoint
  2009-08-24 20:12     ` Dmitry Dzhus
@ 2009-08-25  1:02       ` Miles Bader
  0 siblings, 0 replies; 5+ messages in thread
From: Miles Bader @ 2009-08-25  1:02 UTC (permalink / raw)
  To: Dmitry Dzhus; +Cc: Nick Roberts, emacs-devel

Dmitry Dzhus <dima@sphinx.net.ru> writes:
> Yup, sorry about this. I've (finally) fixed this in trunk, so the code
> doesn't use mapcar* anymore.
>
> This function was utilized by small code which aligns text in columns.
>
> I decided just to write a replacement for mapcar* which I think mimics
> its notorious parent pretty closely, at least in my case.

Thanks!

hmm, why not extend the core mapcar to work with multiple arguments?
It could be easily done without impacting the "normal" mapcar (single
arg) case, and would probably be a bit more efficient for the multi-arg case.

[I'd actually also like to add some other map functions to the core,
e.g., "mapcan"...]

-Miles

-- 
`Suppose Korea goes to the World Cup final against Japan and wins,' Moon said.
`All the past could be forgiven.'   [NYT]




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-08-25  1:02 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-20 11:31 23.1.50; gdb mode screwup when setting breakpoint Miles Bader
2009-08-20 12:18 ` Nick Roberts
2009-08-24  6:23   ` Miles Bader
2009-08-24 20:12     ` Dmitry Dzhus
2009-08-25  1:02       ` Miles Bader

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).