diff options
| author | Nick Roberts | 2005-01-29 06:55:14 +0000 |
|---|---|---|
| committer | Nick Roberts | 2005-01-29 06:55:14 +0000 |
| commit | 190def626e1f80076ee355c4fd02d107f1252424 (patch) | |
| tree | df7be51457b26de5c44636c1ed8dff0d134a33df | |
| parent | 88cc5da7a59989a18b6e5f4fc66a8149051bc002 (diff) | |
| download | emacs-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.el | 11 |
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 | ||