changeset 106961:55db4345f5e3

Fix bug#5435: ada-mode; pragma parameter list indented incorrectly.
author Juanma Barranquero <lekktu@gmail.com>
date Sat, 23 Jan 2010 13:42:22 +0100
parents a9aa0a1b1492 (current diff) 7e2ebba4063d (diff)
children d189e0755f30
files lisp/ChangeLog
diffstat 2 files changed, 8 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Sat Jan 23 13:38:02 2010 +0100
+++ b/lisp/ChangeLog	Sat Jan 23 13:42:22 2010 +0100
@@ -1,3 +1,8 @@
+2010-01-23  Stephen Leake  <stephen_leake@member.fsf.org>
+
+        * progmodes/ada-mode.el (ada-in-paramlist-p): Pragma syntax
+	is the same as subprogram call, not declaration.  (Bug#5435).
+
 2010-01-23  Michael Albinus  <michael.albinus@gmx.de>
 
 	* net/tramp-smb.el (tramp-smb-conf): New defcustom.
--- a/lisp/progmodes/ada-mode.el	Sat Jan 23 13:38:02 2010 +0100
+++ b/lisp/progmodes/ada-mode.el	Sat Jan 23 13:42:22 2010 +0100
@@ -257,7 +257,7 @@
 
 For instance:
     A := 1;   --  A multi-line comment
-	      --  aligned if ada-indent-align-comments is t"
+	      --  aligned if `ada-indent-align-comments' is t"
   :type 'boolean :group 'ada)
 
 (defcustom ada-indent-comment-as-code t
@@ -4163,7 +4163,7 @@
 
 
 (defun ada-in-paramlist-p ()
-  "Return t if point is inside a parameter-list."
+  "Return t if point is inside the parameter-list of a declaration, but not a subprogram call or aggregate."
   (save-excursion
     (and
      (ada-search-ignore-string-comment "(\\|)" t nil t)
@@ -4194,13 +4194,13 @@
 
      ;; right keyword two words before parenthesis ?
      ;; Type is in this list because of discriminants
+     ;; pragma is not, because the syntax is that of a subprogram call.
      (looking-at (eval-when-compile
 		   (concat "\\<\\("
 			   "procedure\\|function\\|body\\|"
 			   "task\\|entry\\|accept\\|"
 			   "access[ \t]+procedure\\|"
 			   "access[ \t]+function\\|"
-			   "pragma\\|"
 			   "type\\)\\>"))))))
 
 (defun ada-search-ignore-complex-boolean (regexp backwardp)