aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Roberts2005-01-29 06:55:14 +0000
committerNick Roberts2005-01-29 06:55:14 +0000
commit190def626e1f80076ee355c4fd02d107f1252424 (patch)
treedf7be51457b26de5c44636c1ed8dff0d134a33df
parent88cc5da7a59989a18b6e5f4fc66a8149051bc002 (diff)
downloademacs-190def626e1f80076ee355c4fd02d107f1252424.tar.gz
emacs-190def626e1f80076ee355c4fd02d107f1252424.zip
(gdb-info-breakpoints-custom)
(gdb-goto-breakpoint): Make breakpoint handling work on template functions in C++. Reported by Martin Reed <mjreed@essex.ac.uk> (gdb-assembler-custom): Update to recognise breakpoint information added on 2005-01-19.
-rw-r--r--lisp/progmodes/gdb-ui.el11
1 files changed, 6 insertions, 5 deletions
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el
index a89f4b1694f..2769023605e 100644
--- a/lisp/progmodes/gdb-ui.el
+++ b/lisp/progmodes/gdb-ui.el
@@ -1902,7 +1902,7 @@ BUFFER nil or omitted means use the current buffer."
1902 1902
1903(defun gdb-assembler-custom () 1903(defun gdb-assembler-custom ()
1904 (let ((buffer (gdb-get-buffer 'gdb-assembler-buffer)) 1904 (let ((buffer (gdb-get-buffer 'gdb-assembler-buffer))
1905 (pos 1) (address) (flag)) 1905 (pos 1) (address) (flag) (bptno))
1906 (with-current-buffer buffer 1906 (with-current-buffer buffer
1907 (if (not (equal gdb-current-address "main")) 1907 (if (not (equal gdb-current-address "main"))
1908 (progn 1908 (progn
@@ -1924,16 +1924,17 @@ BUFFER nil or omitted means use the current buffer."
1924 (if (looking-at "[^\t].*breakpoint") 1924 (if (looking-at "[^\t].*breakpoint")
1925 (progn 1925 (progn
1926 (looking-at 1926 (looking-at
1927 "[0-9]*\\s-*\\S-*\\s-*\\S-*\\s-*\\(.\\)\\s-*0x\\(\\S-*\\)") 1927 "\\([0-9]+\\)\\s-+\\S-+\\s-+\\S-+\\s-+\\(.\\)\\s-+0x\\(\\S-+\\)")
1928 (setq flag (char-after (match-beginning 1))) 1928 (setq bptno (match-string 1))
1929 (setq address (match-string 2)) 1929 (setq flag (char-after (match-beginning 2)))
1930 (setq address (match-string 3))
1930 ;; remove leading 0s from output of info break. 1931 ;; remove leading 0s from output of info break.
1931 (if (string-match "^0+\\(.*\\)" address) 1932 (if (string-match "^0+\\(.*\\)" address)
1932 (setq address (match-string 1 address))) 1933 (setq address (match-string 1 address)))
1933 (with-current-buffer buffer 1934 (with-current-buffer buffer
1934 (goto-char (point-min)) 1935 (goto-char (point-min))
1935 (if (re-search-forward address nil t) 1936 (if (re-search-forward address nil t)
1936 (gdb-put-breakpoint-icon (eq flag ?y)))))))) 1937 (gdb-put-breakpoint-icon (eq flag ?y) bptno)))))))
1937 (if (not (equal gdb-current-address "main")) 1938 (if (not (equal gdb-current-address "main"))
1938 (set-window-point (get-buffer-window buffer 0) pos)))) 1939 (set-window-point (get-buffer-window buffer 0) pos))))
1939 1940