]> code.delx.au - gnu-emacs-elpa/blobdiff - packages/f90-interface-browser/f90-interface-browser.el
* f90-interface-browser: Merge from upstream
[gnu-emacs-elpa] / packages / f90-interface-browser / f90-interface-browser.el
similarity index 98%
rename from f90-interface-browser.el
rename to packages/f90-interface-browser/f90-interface-browser.el
index 5761b87229f93c4a0dc98fe332ca536067f4f66d..d499ba021a0f8dc8bcc06dc96690eae07a35f7aa 100644 (file)
@@ -1,11 +1,12 @@
 ;;; f90-interface-browser.el --- Parse and browse f90 interfaces
 
-;; Copyright (C) 2011, 2012  Free Software Foundation, Inc
+;; Copyright (C) 2011, 2012, 2013, 2014  Free Software Foundation, Inc
 
 ;; Author: Lawrence Mitchell <wence@gmx.li>
 ;; Created: 2011-07-06
-;; Available-from: http://github.com/wence-/f90-iface/
+;; URL: http://github.com/wence-/f90-iface/
 ;; Version: 1.1
+;; Package-Type: simple
 
 ;; COPYRIGHT NOTICE
 
@@ -553,7 +554,8 @@ default is the type of the variable."
                            (format "%s :: foo" (f90-format-parsed-slot-type x)))
                          arglist "\n")))
     (f90-mode)
-    (font-lock-fontify-buffer)
+    (if (fboundp 'font-lock-ensure)
+        (font-lock-ensure) (font-lock-fontify-buffer))
     (goto-char (point-min))
     (mapconcat 'identity
                (loop while (not (eobp))
@@ -582,7 +584,6 @@ first (length ARGLIST) args of SPECIALISER."
                    (<= n-passed-args n-spec-args)))
       (loop for arg in arglist
             for spec-arg in spec-arglist
-            with match = nil
             unless (or (null arg)
                        (string= (f90-get-parsed-type-typename arg)
                                 (f90-get-parsed-type-typename spec-arg)))
@@ -886,7 +887,7 @@ needs a reference count interface, so insert one."
       ;; Show types of the same type together
       (setq types (sort types (lambda (x y)
                                 (string< (cadar x) (cadar y)))))
-      (loop for (type name) in types
+      (loop for (type _name) in types
             do
             (insert (format "%s :: %s\n"
                             (f90-format-parsed-slot-type type)
@@ -999,13 +1000,12 @@ dealt with correctly."
                           (setcdr (assoc "dimension" dec)
                                   (1+ (f90-count-commas
                                        (match-string 2 name))))
-                        (add-to-list 'dec
-                                     (cons "dimension"
-                                           (1+ (f90-count-commas
-                                                (match-string 2 name))))
-                                     t))
+                        (push (cons "dimension"
+                                    (1+ (f90-count-commas
+                                         (match-string 2 name))))
+                              dec))
                       (setq name (match-string 1 name)))
-            collect (cons name dec)))))
+            collect (cons name (nreverse dec))))))
 
 (defun f90-split-declaration (dec)
   "Split and parse a type declaration DEC.