]> code.delx.au - gnu-emacs-elpa/commitdiff
* packages/f90-interface-browser/f90-interface-browser.el: Don't require CL
authorStefan Monnier <monnier@iro.umontreal.ca>
Wed, 21 Aug 2013 17:30:52 +0000 (13:30 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Wed, 21 Aug 2013 17:30:52 +0000 (13:30 -0400)
at runtime since it's not needed.
(f90-approx-arglist-match): Remove unused var `match'.
(f90-parse-single-type-declaration): Don't use `add-to-list' on a local var.
* packages/f90-interface-browser/f90-tests.el: Require `cl-lib'.
(test-check, test-combine-results, parse-declaration): Fix up
names accordingly.

externals-list
packages/f90-interface-browser/f90-interface-browser.el
packages/f90-interface-browser/f90-tests.el

index ac809e616621cec063ba145eaba482b428c29e5b..f3cce41b658e51bf08b826e1907269b160d99b32 100644 (file)
@@ -24,7 +24,7 @@
  ("dismal"             :external nil)
  ("eldoc-eval"         :subtree "https://github.com/thierryvolpiatto/eldoc-eval.git")
  ("enwc"               :subtree "bzr::bzr://bzr.savannah.nongnu.org/enwc/trunk")
- ("f90-interface-browser" :subtree "http://github.com/wence-/f90-iface")
+ ("f90-interface-browser" :subtree "https://github.com/wence-/f90-iface")
  ("ggtags"             :subtree "https://github.com/leoliu/ggtags")
  ("ioccur"             :subtree "https://github.com/thierryvolpiatto/ioccur.git")
  ("js2-mode"           :subtree "https://github.com/mooz/js2-mode.git")
index afa8fa298227e9a959c6f2576aba37238de5871b..8956400deb3b3a4e9244c5078bc620cc2835e9eb 100644 (file)
@@ -1,6 +1,6 @@
 ;;; f90-interface-browser.el --- Parse and browse f90 interfaces
 
-;; Copyright (C) 2011, 2012  Free Software Foundation, Inc
+;; Copyright (C) 2011, 2012, 2013  Free Software Foundation, Inc
 
 ;; Author: Lawrence Mitchell <wence@gmx.li>
 ;; Created: 2011-07-06
 ;;; Code:
 
 ;;; Preamble
-(require 'cl)
+(eval-when-compile (require 'cl))
 (require 'thingatpt)
 (require 'f90)
 (require 'etags)
@@ -593,7 +593,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)))
@@ -1029,13 +1028,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.
index d55308b6ca692aa9cd757097ec8579470bf32075..74c0dee62d5d529045f70f86f32a6e6a14b881ea 100644 (file)
 
 ;;; Code:
 
+(require 'cl-lib)
+
+;; FIXME: Convert to use ERT.
+
 (defvar *test-name* nil)
 
 (defvar *test-tests* (make-hash-table :test 'eq))
 (defmacro test-check (&rest forms)
   "Run each expression in 'forms' as a test case."
   `(test-combine-results
-    ,@(loop for (expr res) in forms
-            collect `(test-report-result (equal (condition-case err
-                                                    ,expr
-                                                  (error (gensym))) ',res)
-                                         ',expr ',res))))
+    ,@(cl-loop for (expr res) in forms
+               collect `(test-report-result (equal (condition-case _
+                                                       ,expr
+                                                     (error (cl-gensym)))
+                                                   ',res)
+                                            ',expr ',res))))
 
 (defmacro test-combine-results (&rest forms)
   "Combine the results (as booleans) of evaluating 'forms' in order."
   (let ((result (make-symbol "result")))
     `(let ((,result t))
-       ,@(loop for f in forms collect `(unless ,f (setf ,result nil)))
+       ,@(cl-loop for f in forms collect `(unless ,f (setf ,result nil)))
        ,result)))
 
 (defun test-report-result (result res req)
     ("integer" ("dimension" . 1)))))
 
 (deftest parse-declaration ()
-  (flet ((fun (str) (with-temp-buffer
-                      (insert str)
-                      (goto-char (point-min))
-                      (f90-parse-single-type-declaration))))
+  (cl-flet ((fun (str) (with-temp-buffer
+                         (insert str)
+                         (goto-char (point-min))
+                         (f90-parse-single-type-declaration))))
     (test-check
      ((fun "integer :: name") (("name" "integer")))
      ((fun "integer :: name1, name2") (("name1" "integer")