1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-04 11:00:45 -08:00

(elint-unknown-builtin-args): Fix encode-time spec. (Bug#2453)

(elint-find-builtin-args): Make the match more restrictive.
Handle errors.  Return a result actually containing the function name.
This commit is contained in:
Glenn Morris 2009-02-24 03:32:19 +00:00
parent 433c16523a
commit 92bd667f24
2 changed files with 31 additions and 14 deletions

View file

@ -1,3 +1,21 @@
2009-02-24 Glenn Morris <rgm@gnu.org>
* eshell/esh-util.el (eshell-parse-ange-ls): Define `name' before
potential use.
* progmodes/cperl-mode.el (cperl-find-pods-heres):
Don't globally bind `name'.
* emacs-lisp/elint.el (elint-unknown-builtin-args):
Fix encode-time spec. (Bug#2453)
(elint-find-builtin-args): Make the match more restrictive.
Handle errors. Return a result actually containing the function name.
* mail/rmail.el (rmail): Don't show a message if rmail-get-new-mail
already did. (Bug#2440)
(rmail-quit): Don't swap buffers. (Bug#2441)
(rmail-list-to-menu): Don't globally bind `name'.
2009-02-23 Chong Yidong <cyd@stupidchicken.com> 2009-02-23 Chong Yidong <cyd@stupidchicken.com>
* net/ange-ftp.el (ange-ftp-insert-directory): Adapt switch * net/ange-ftp.el (ange-ftp-insert-directory): Adapt switch
@ -11,8 +29,7 @@
2009-02-23 Geoff Gole <geoffgole@gmail.com> (tiny change) 2009-02-23 Geoff Gole <geoffgole@gmail.com> (tiny change)
* ibuffer.el (ibuffer-redisplay-engine): Avoid "Mark set" message * ibuffer.el (ibuffer-redisplay-engine): Avoid "Mark set" message
clobbering the useful message from `ibuffer-toggle-sorting-mode'. clobbering useful message from `ibuffer-toggle-sorting-mode'. (Bug#2439)
(Bug#2439)
2009-02-23 Miles Bader <miles@gnu.org> 2009-02-23 Miles Bader <miles@gnu.org>

View file

@ -1,7 +1,7 @@
;;; elint.el --- Lint Emacs Lisp ;;; elint.el --- Lint Emacs Lisp
;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005, ;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
;; 2006, 2007, 2008, 2009 Free Software Foundation, Inc. ;; 2009 Free Software Foundation, Inc.
;; Author: Peter Liljenberg <petli@lysator.liu.se> ;; Author: Peter Liljenberg <petli@lysator.liu.se>
;; Created: May 1997 ;; Created: May 1997
@ -107,7 +107,7 @@
(if cond then &rest else) (if cond then &rest else)
(apply function &rest args) (apply function &rest args)
(format string &rest args) (format string &rest args)
(encode-time second minute hour day month year zone &rest args) (encode-time second minute hour day month year &optional zone)
(min &rest args) (min &rest args)
(logand &rest args) (logand &rest args)
(logxor &rest args) (logxor &rest args)
@ -506,6 +506,7 @@ Returns `unknown' if we couldn't find arguments."
(let ((fcode (indirect-function func))) (let ((fcode (indirect-function func)))
(if (subrp fcode) (if (subrp fcode)
(let ((args (get func 'elint-args))) (let ((args (get func 'elint-args)))
;; FIXME builtins with no args have args = nil.
(if args args 'unknown)) (if args args 'unknown))
(elint-find-args-in-code fcode))) (elint-find-args-in-code fcode)))
'undefined) 'undefined)
@ -792,15 +793,14 @@ functions, otherwise use LIST.
Each functions is represented by a cons cell: Each functions is represented by a cons cell:
\(function-symbol . args) \(function-symbol . args)
If no documentation could be found args will be `unknown'." If no documentation could be found args will be `unknown'."
(mapcar (lambda (f)
(mapcar (function (lambda (f) (let ((doc (documentation f t)))
(let ((doc (documentation f t))) (or (and doc
(if (and doc (string-match "\n\n\\((.*)\\)" doc)) (string-match "\n\n(fn\\(.*)\\)\\'" doc)
(read (match-string 1 doc)) (ignore-errors
(cons f 'unknown)) (read (format "(%s %s" f (match-string 1 doc)))))
))) (cons f 'unknown))))
(if list list (or list (elint-find-builtins))))
(elint-find-builtins))))
(provide 'elint) (provide 'elint)