diff options
| author | Eli Zaretskii | 2025-05-27 13:50:12 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2025-05-27 13:50:12 +0300 |
| commit | 5883ceedc85827041d4f1d64fd15f6b7a28d9221 (patch) | |
| tree | 6819bdbaa010f4d0548dc458ec8cbf56bef635eb | |
| parent | 93934b645bcda5cc07ead14c35615a44efae0681 (diff) | |
| download | emacs-5883ceedc85827041d4f1d64fd15f6b7a28d9221.tar.gz emacs-5883ceedc85827041d4f1d64fd15f6b7a28d9221.zip | |
Fix exact matching of Ada tags by 'M-.'
* lisp/progmodes/etags.el (tag-exact-match-p): Support Ada tags
that have "/x" qualifiers appended to them. (Bug#78489)
| -rw-r--r-- | lisp/progmodes/etags.el | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lisp/progmodes/etags.el b/lisp/progmodes/etags.el index 42057a3aacb..f14d91504af 100644 --- a/lisp/progmodes/etags.el +++ b/lisp/progmodes/etags.el | |||
| @@ -1649,7 +1649,10 @@ Point should be just after a string that matches TAG." | |||
| 1649 | (or (and (eq (char-after (point)) ?\001) | 1649 | (or (and (eq (char-after (point)) ?\001) |
| 1650 | (eq (char-after (- (point) (length tag) 1)) ?\177)) | 1650 | (eq (char-after (- (point) (length tag) 1)) ?\177)) |
| 1651 | ;; We are not on the explicit tag name, but perhaps it follows. | 1651 | ;; We are not on the explicit tag name, but perhaps it follows. |
| 1652 | (looking-at (concat "[^\177\n]*\177" (regexp-quote tag) "\001")))) | 1652 | (looking-at (concat "[^\177\n]*\177" |
| 1653 | (regexp-quote tag) | ||
| 1654 | ;; The optional "/x" part is for Ada tags. | ||
| 1655 | "\\(/[fpsbtk]\\)?\001")))) | ||
| 1653 | 1656 | ||
| 1654 | ;; t if point is at a tag line that has an implicit name. | 1657 | ;; t if point is at a tag line that has an implicit name. |
| 1655 | ;; point should be just after a string that matches TAG. | 1658 | ;; point should be just after a string that matches TAG. |