* lisp/subr.el (function-arity): Remove (mistakenly added).
authorStefan Monnier <monnier@iro.umontreal.ca>
Tue, 11 Jun 2013 21:53:40 +0000 (17:53 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Tue, 11 Jun 2013 21:53:40 +0000 (17:53 -0400)
Fixes: debbugs:14590

lisp/ChangeLog
lisp/subr.el

index 3bfd460..ddb0d0b 100644 (file)
@@ -1,5 +1,7 @@
 2013-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+       * subr.el (function-arity): Remove (mistakenly added) (bug#14590).
+
        * progmodes/prolog.el (prolog-make-keywords-regexp): Remove.
        (prolog-font-lock-keywords): Use regexp-opt instead.
        Don't manually highlight strings.
index fe9de83..8f290f3 100644 (file)
@@ -4234,32 +4234,6 @@ use `called-interactively-p'."
   (declare (obsolete called-interactively-p "23.2"))
   (called-interactively-p 'interactive))
 
-(defun function-arity (f &optional num)
-  "Return the (MIN . MAX) arity of F.
-If the maximum arity is infinite, MAX is `many'.
-F can be a function or a macro.
-If NUM is non-nil, return non-nil iff F can be called with NUM args."
-  (if (symbolp f) (setq f (indirect-function f)))
-  (if (eq (car-safe f) 'macro) (setq f (cdr f)))
-  (let ((res
-        (if (subrp f)
-            (let ((x (subr-arity f)))
-              (if (eq (cdr x) 'unevalled) (cons (car x) 'many)))
-          (let* ((args (if (consp f) (cadr f) (aref f 0)))
-                 (max (length args))
-                 (opt (memq '&optional args))
-                 (rest (memq '&rest args))
-                 (min (- max (length opt))))
-            (if opt
-                (cons min (if rest 'many (1- max)))
-              (if rest
-                  (cons (- max (length rest)) 'many)
-                (cons min max)))))))
-    (if (not num)
-       res
-      (and (>= num (car res))
-          (or (eq 'many (cdr res)) (<= num (cdr res)))))))
-
 (defun set-temporary-overlay-map (map &optional keep-pred)
   "Set MAP as a temporary keymap taking precedence over most other keymaps.
 Note that this does NOT take precedence over the \"overriding\" maps