]> git.eshelyaron.com Git - emacs.git/commitdiff
(byte-optimize-while)
authorGerd Moellmann <gerd@gnu.org>
Mon, 26 Mar 2001 13:04:11 +0000 (13:04 +0000)
committerGerd Moellmann <gerd@gnu.org>
Mon, 26 Mar 2001 13:04:11 +0000 (13:04 +0000)
(byte-optimize-form-code-walker): Diagnose too few arguments
for `if' and `while'.

lisp/emacs-lisp/byte-opt.el

index da69538660482b8b64c2decb0638501eaff5677e..5c713b134497abe4a26a432fc4aa749fe288f3e4 100644 (file)
@@ -1,6 +1,6 @@
 ;;; byte-opt.el --- the optimization passes of the emacs-lisp byte compiler.
 
-;;; Copyright (c) 1991, 1994, 2000 Free Software Foundation, Inc.
+;;; Copyright (c) 1991, 1994, 2000, 2001 Free Software Foundation, Inc.
 
 ;; Author: Jamie Zawinski <jwz@lucid.com>
 ;;     Hallvard Furuseth <hbf@ulrik.uio.no>
              (byte-optimize-body (cdr (cdr form)) for-effect))))
          
          ((eq fn 'if)
+          (when (< (length form) 3)
+            (byte-compile-warn "Too few arguments for `if'"))
           (cons fn
             (cons (byte-optimize-form (nth 1 form) nil)
               (cons
           (list 'progn clause nil)))))
 
 (defun byte-optimize-while (form)
+  (when (< (length form) 2)
+    (byte-compile-warn "Too few arguments for `while'"))
   (if (nth 1 form)
       form))