diff options
| author | Nick Roberts | 2005-05-09 21:55:33 +0000 |
|---|---|---|
| committer | Nick Roberts | 2005-05-09 21:55:33 +0000 |
| commit | df94fa1e38259d1066763019ca711bfb4114efe1 (patch) | |
| tree | e799641e43bd38330d5b5a5f5ce82f90a7fa1ffe | |
| parent | 89d8189aa891afe6048899d599c77c72bf0a3402 (diff) | |
| download | emacs-df94fa1e38259d1066763019ca711bfb4114efe1.tar.gz emacs-df94fa1e38259d1066763019ca711bfb4114efe1.zip | |
(gud-tooltip-mode): Require tooltip to be safe.
(gud-tooltip-print-command): Add gdbmi case.
(gud-tooltip-tips): Call gdb-tooltip-print-1 first if there is
preprocessor info.
| -rw-r--r-- | lisp/progmodes/gud.el | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el index 544a4804639..5c81ba7f6f9 100644 --- a/lisp/progmodes/gud.el +++ b/lisp/progmodes/gud.el | |||
| @@ -3207,6 +3207,7 @@ This event can be examined by forms in GUD-TOOLTIP-DISPLAY.") | |||
| 3207 | "Toggle the display of GUD tooltips." | 3207 | "Toggle the display of GUD tooltips." |
| 3208 | :global t | 3208 | :global t |
| 3209 | :group 'gud | 3209 | :group 'gud |
| 3210 | (require 'tooltip) | ||
| 3210 | (if gud-tooltip-mode | 3211 | (if gud-tooltip-mode |
| 3211 | (progn | 3212 | (progn |
| 3212 | (add-hook 'change-major-mode-hook 'gud-tooltip-change-major-mode) | 3213 | (add-hook 'change-major-mode-hook 'gud-tooltip-change-major-mode) |
| @@ -3253,7 +3254,7 @@ If GUD-TOOLTIP-DEREFERENCE is t, also prepend a `*' to EXPR." | |||
| 3253 | (setq expr (concat "*" expr))) | 3254 | (setq expr (concat "*" expr))) |
| 3254 | (case gud-minor-mode | 3255 | (case gud-minor-mode |
| 3255 | ((gdb gdba) (concat "server print " expr)) | 3256 | ((gdb gdba) (concat "server print " expr)) |
| 3256 | (dbx (concat "print " expr)) | 3257 | ((dbx gdbmi) (concat "print " expr)) |
| 3257 | (xdb (concat "p " expr)) | 3258 | (xdb (concat "p " expr)) |
| 3258 | (sdb (concat expr "/")) | 3259 | (sdb (concat expr "/")) |
| 3259 | (perldb expr))) | 3260 | (perldb expr))) |
| @@ -3293,9 +3294,14 @@ This function must return nil if it doesn't handle EVENT." | |||
| 3293 | expr)))) | 3294 | expr)))) |
| 3294 | (let ((cmd (gud-tooltip-print-command expr))) | 3295 | (let ((cmd (gud-tooltip-print-command expr))) |
| 3295 | (unless (null cmd) ; CMD can be nil if unknown debugger | 3296 | (unless (null cmd) ; CMD can be nil if unknown debugger |
| 3296 | (if (eq gud-minor-mode 'gdba) | 3297 | (if (memq gud-minor-mode '(gdba gdbmi)) |
| 3297 | (gdb-enqueue-input | 3298 | (if gdb-macro-info |
| 3298 | (list (concat cmd "\n") 'gdb-tooltip-print)) | 3299 | (gdb-enqueue-input |
| 3300 | (list (concat | ||
| 3301 | gdb-server-prefix "macro expand " expr "\n") | ||
| 3302 | `(lambda () (gdb-tooltip-print-1 ,expr)))) | ||
| 3303 | (gdb-enqueue-input | ||
| 3304 | (list (concat cmd "\n") 'gdb-tooltip-print))) | ||
| 3299 | (setq gud-tooltip-original-filter (process-filter process)) | 3305 | (setq gud-tooltip-original-filter (process-filter process)) |
| 3300 | (set-process-filter process 'gud-tooltip-process-output) | 3306 | (set-process-filter process 'gud-tooltip-process-output) |
| 3301 | (gud-basic-call cmd)) | 3307 | (gud-basic-call cmd)) |