emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el


From: Nick Roberts
Subject: [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el
Date: Thu, 17 Nov 2005 21:47:21 -0500

Index: emacs/lisp/progmodes/gdb-ui.el
diff -c emacs/lisp/progmodes/gdb-ui.el:1.112 
emacs/lisp/progmodes/gdb-ui.el:1.113
*** emacs/lisp/progmodes/gdb-ui.el:1.112        Tue Nov 15 12:25:49 2005
--- emacs/lisp/progmodes/gdb-ui.el      Fri Nov 18 02:47:21 2005
***************
*** 337,342 ****
--- 337,351 ----
                         (file-name-nondirectory file) ":1\n")
                 `(lambda () (gdb-set-gud-minor-mode ,buffer)))))))))
  
+ (defun gdb-find-watch-expression ()
+   (let* ((var (nth (- (line-number-at-pos (point)) 2) gdb-var-list))
+        (varno (nth 1 var)) (expr))
+     (string-match "\\(var[0-9]+\\)\\.\\(.*\\)" varno)
+     (dolist (var1 gdb-var-list)
+       (if (string-equal (nth 1 var1) (match-string 1 varno))
+         (setq expr (concat (car var1) "." (match-string 2 varno)))))
+     expr))
+ 
  (defun gdb-ann3 ()
    (setq gdb-debug-log nil)
    (set (make-local-variable 'gud-minor-mode) 'gdba)
***************
*** 368,373 ****
--- 377,391 ----
    ;;
    (gud-def gud-go (gud-call (if gdb-active-process "continue" "run") arg)
           nil "Start or continue execution.")
+ 
+   ;; For debugging Emacs only.
+   (gud-def gud-pp
+          (gud-call
+           (concat
+            "pp1 " (if (eq (buffer-local-value
+                            'major-mode (window-buffer)) 'speedbar-mode)
+                       (gdb-find-watch-expression) "%e")) arg)
+          nil   "Print the emacs s-expression.")
  
    (define-key gud-minor-mode-map [left-margin mouse-1]
      'gdb-mouse-set-clear-breakpoint)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]