From aefd695aadf810e2909ca6d7991161658d3b84f5 Mon Sep 17 00:00:00 2001 From: Gerd Moellmann Date: Mon, 26 Mar 2001 13:04:11 +0000 Subject: [PATCH] (byte-optimize-while) (byte-optimize-form-code-walker): Diagnose too few arguments for `if' and `while'. --- lisp/emacs-lisp/byte-opt.el | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el index da695386604..5c713b13449 100644 --- a/lisp/emacs-lisp/byte-opt.el +++ b/lisp/emacs-lisp/byte-opt.el @@ -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 ;; Hallvard Furuseth @@ -445,6 +445,8 @@ (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 @@ -1014,6 +1016,8 @@ (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)) -- 2.39.2