aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuanma Barranquero2008-10-12 23:06:29 +0000
committerJuanma Barranquero2008-10-12 23:06:29 +0000
commitdd4fdc44b1143f7959439eecb00d3a79c471a962 (patch)
treec9e0c3e750a900087a5b5b337edba641652074ff
parentf6c2397a8584597b92d292b32fe254299216ab05 (diff)
downloademacs-dd4fdc44b1143f7959439eecb00d3a79c471a962.tar.gz
emacs-dd4fdc44b1143f7959439eecb00d3a79c471a962.zip
* progmodes/ada-mode.el (ada-get-indent-end, ada-goto-matching-start):
Add support for extended return statement. * progmodes/ada-xref.el (ada-gnat-parse-gpr): Don't reverse src-dir and obj-dir; keep user order.
-rw-r--r--lisp/ChangeLog8
-rw-r--r--lisp/progmodes/ada-mode.el14
-rw-r--r--lisp/progmodes/ada-xref.el4
3 files changed, 18 insertions, 8 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index fc71b0eefa4..bbcce20ddb9 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,11 @@
12008-10-12 Stephen Leake <stephen_leake@member.fsf.org>
2
3 * progmodes/ada-mode.el (ada-get-indent-end, ada-goto-matching-start):
4 Add support for extended return statement.
5
6 * progmodes/ada-xref.el (ada-gnat-parse-gpr): Don't reverse src-dir
7 and obj-dir; keep user order.
8
12008-10-12 Glenn Morris <rgm@gnu.org> 92008-10-12 Glenn Morris <rgm@gnu.org>
2 10
3 * Makefile.in (ELCFILES): Update. 11 * Makefile.in (ELCFILES): Update.
diff --git a/lisp/progmodes/ada-mode.el b/lisp/progmodes/ada-mode.el
index ec5504e471c..40bbeb9fe41 100644
--- a/lisp/progmodes/ada-mode.el
+++ b/lisp/progmodes/ada-mode.el
@@ -2840,12 +2840,15 @@ ORGPOINT is the limit position used in the calculation."
2840 (forward-word 1) 2840 (forward-word 1)
2841 (ada-goto-next-non-ws) 2841 (ada-goto-next-non-ws)
2842 (cond 2842 (cond
2843 ((looking-at "\\<\\(loop\\|select\\|if\\|case\\)\\>") 2843 ;;
2844 ;; loop/select/if/case/return
2845 ;;
2846 ((looking-at "\\<\\(loop\\|select\\|if\\|case\\|return\\)\\>")
2844 (save-excursion (ada-check-matching-start (match-string 0))) 2847 (save-excursion (ada-check-matching-start (match-string 0)))
2845 (list (save-excursion (back-to-indentation) (point)) 0)) 2848 (list (save-excursion (back-to-indentation) (point)) 0))
2846 2849
2847 ;; 2850 ;;
2848 ;; loop/select/if/case/record/select 2851 ;; record
2849 ;; 2852 ;;
2850 ((looking-at "\\<record\\>") 2853 ((looking-at "\\<record\\>")
2851 (save-excursion 2854 (save-excursion
@@ -3897,13 +3900,12 @@ If GOTOTHEN is non-nil, point moves to the 'then' following 'if'."
3897 (goto-char (match-beginning 0))) 3900 (goto-char (match-beginning 0)))
3898 3901
3899 ;; 3902 ;;
3900 ;; found 'do' => skip back to 'accept' 3903 ;; found 'do' => skip back to 'accept' or 'return'
3901 ;; 3904 ;;
3902 ((looking-at "do") 3905 ((looking-at "do")
3903 (unless (ada-search-ignore-string-comment 3906 (unless (ada-search-ignore-string-comment
3904 "accept" t nil nil 3907 "\\<accept\\|return\\>" t)
3905 'word-search-backward) 3908 (error "Missing 'accept' or 'return' in front of 'do'"))))
3906 (error "Missing 'accept' in front of 'do'"))))
3907 (point)) 3909 (point))
3908 3910
3909 (if noerror 3911 (if noerror
diff --git a/lisp/progmodes/ada-xref.el b/lisp/progmodes/ada-xref.el
index d38795658cd..1628f461b6c 100644
--- a/lisp/progmodes/ada-xref.el
+++ b/lisp/progmodes/ada-xref.el
@@ -406,8 +406,8 @@ Assumes environment variable ADA_PROJECT_PATH is set properly."
406 406
407 ;; Set properties 407 ;; Set properties
408 (setq plist (plist-put plist 'gpr_file gpr-file)) 408 (setq plist (plist-put plist 'gpr_file gpr-file))
409 (setq plist (plist-put plist 'src_dir (reverse src-dir))) 409 (setq plist (plist-put plist 'src_dir src-dir))
410 (plist-put plist 'obj_dir (reverse obj-dir)) 410 (plist-put plist 'obj_dir obj-dir)
411 ) 411 )
412 (kill-buffer nil) 412 (kill-buffer nil)
413 (message "Parsing %s ... done" gpr-file) 413 (message "Parsing %s ... done" gpr-file)