emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/emacs-lisp/bytecomp.el


From: Richard M . Stallman
Subject: [Emacs-diffs] Changes to emacs/lisp/emacs-lisp/bytecomp.el
Date: Sun, 13 Jun 2004 18:10:00 -0400

Index: emacs/lisp/emacs-lisp/bytecomp.el
diff -c emacs/lisp/emacs-lisp/bytecomp.el:2.151 
emacs/lisp/emacs-lisp/bytecomp.el:2.152
*** emacs/lisp/emacs-lisp/bytecomp.el:2.151     Wed May 19 18:53:13 2004
--- emacs/lisp/emacs-lisp/bytecomp.el   Sun Jun 13 22:01:36 2004
***************
*** 1008,1018 ****
         (when (nth 2 new)))
      (byte-compile-set-symbol-position (car form))
      (if (memq 'obsolete byte-compile-warnings)
!       (byte-compile-warn "%s is an obsolete function%s; %s" (car form)
                           (if when (concat " since " when) "")
                           (if (stringp (car new))
                               (car new)
!                            (format "use %s instead." (car new)))))
      (funcall (or handler 'byte-compile-normal-call) form)))
  
  ;; Compiler options
--- 1008,1018 ----
         (when (nth 2 new)))
      (byte-compile-set-symbol-position (car form))
      (if (memq 'obsolete byte-compile-warnings)
!       (byte-compile-warn "`%s' is an obsolete function%s; %s" (car form)
                           (if when (concat " since " when) "")
                           (if (stringp (car new))
                               (car new)
!                            (format "use `%s' instead." (car new)))))
      (funcall (or handler 'byte-compile-normal-call) form)))
  
  ;; Compiler options
***************
*** 2076,2082 ****
  (defun byte-compile-file-form-defsubst (form)
    (when (assq (nth 1 form) byte-compile-unresolved-functions)
      (setq byte-compile-current-form (nth 1 form))
!     (byte-compile-warn "defsubst %s was used before it was defined"
                       (nth 1 form)))
    (byte-compile-file-form
     (macroexpand form byte-compile-macro-environment))
--- 2076,2082 ----
  (defun byte-compile-file-form-defsubst (form)
    (when (assq (nth 1 form) byte-compile-unresolved-functions)
      (setq byte-compile-current-form (nth 1 form))
!     (byte-compile-warn "defsubst `%s' was used before it was defined"
                       (nth 1 form)))
    (byte-compile-file-form
     (macroexpand form byte-compile-macro-environment))
***************
*** 2206,2212 ****
                    (not (assq (nth 1 form)
                               byte-compile-initial-macro-environment)))
               (byte-compile-warn
!                "%s defined multiple times, as both function and macro"
                 (nth 1 form)))
           (setcdr that-one nil))
          (this-one
--- 2206,2212 ----
                    (not (assq (nth 1 form)
                               byte-compile-initial-macro-environment)))
               (byte-compile-warn
!                "`%s' defined multiple times, as both function and macro"
                 (nth 1 form)))
           (setcdr that-one nil))
          (this-one
***************
*** 2215,2228 ****
                    ;; byte-compiler macros in byte-run.el...
                    (not (assq (nth 1 form)
                               byte-compile-initial-macro-environment)))
!            (byte-compile-warn "%s %s defined multiple times in this file"
                                (if macrop "macro" "function")
                                (nth 1 form))))
          ((and (fboundp name)
                (eq (car-safe (symbol-function name))
                    (if macrop 'lambda 'macro)))
           (when (memq 'redefine byte-compile-warnings)
!            (byte-compile-warn "%s %s being redefined as a %s"
                                (if macrop "function" "macro")
                                (nth 1 form)
                                (if macrop "macro" "function")))
--- 2215,2228 ----
                    ;; byte-compiler macros in byte-run.el...
                    (not (assq (nth 1 form)
                               byte-compile-initial-macro-environment)))
!            (byte-compile-warn "%s `%s' defined multiple times in this file"
                                (if macrop "macro" "function")
                                (nth 1 form))))
          ((and (fboundp name)
                (eq (car-safe (symbol-function name))
                    (if macrop 'lambda 'macro)))
           (when (memq 'redefine byte-compile-warnings)
!            (byte-compile-warn "%s `%s' being redefined as a %s"
                                (if macrop "function" "macro")
                                (nth 1 form)
                                (if macrop "macro" "function")))
***************
*** 2695,2701 ****
                (handler (get fn 'byte-compile)))
           (byte-compile-set-symbol-position fn)
           (when (byte-compile-const-symbol-p fn)
!            (byte-compile-warn "%s called as a function" fn))
           (if (and handler
                    (or (not (byte-compile-version-cond
                              byte-compile-compatibility))
--- 2695,2701 ----
                (handler (get fn 'byte-compile)))
           (byte-compile-set-symbol-position fn)
           (when (byte-compile-const-symbol-p fn)
!            (byte-compile-warn "`%s' called as a function" fn))
           (if (and handler
                    (or (not (byte-compile-version-cond
                              byte-compile-compatibility))
***************
*** 2730,2738 ****
    (if (or (not (symbolp var))
          (byte-compile-const-symbol-p var (not (eq base-op 'byte-varref))))
        (byte-compile-warn
!        (cond ((eq base-op 'byte-varbind) "attempt to let-bind %s %s")
!            ((eq base-op 'byte-varset) "variable assignment to %s %s")
!            (t "variable reference to %s %s"))
         (if (symbolp var) "constant" "nonvariable")
         (prin1-to-string var))
      (if (and (get var 'byte-obsolete-variable)
--- 2730,2738 ----
    (if (or (not (symbolp var))
          (byte-compile-const-symbol-p var (not (eq base-op 'byte-varref))))
        (byte-compile-warn
!        (cond ((eq base-op 'byte-varbind) "attempt to let-bind %s `%s'")
!            ((eq base-op 'byte-varset) "variable assignment to %s `%s'")
!            (t "variable reference to %s `%s'"))
         (if (symbolp var) "constant" "nonvariable")
         (prin1-to-string var))
      (if (and (get var 'byte-obsolete-variable)
***************
*** 2740,2750 ****
             (not (eq var byte-compile-not-obsolete-var)))
        (let* ((ob (get var 'byte-obsolete-variable))
               (when (cdr ob)))
!         (byte-compile-warn "%s is an obsolete variable%s; %s" var
                             (if when (concat " since " when) "")
                             (if (stringp (car ob))
                                 (car ob)
!                              (format "use %s instead." (car ob))))))
      (if (memq 'free-vars byte-compile-warnings)
        (if (eq base-op 'byte-varbind)
            (push var byte-compile-bound-variables)
--- 2740,2750 ----
             (not (eq var byte-compile-not-obsolete-var)))
        (let* ((ob (get var 'byte-obsolete-variable))
               (when (cdr ob)))
!         (byte-compile-warn "`%s' is an obsolete variable%s; %s" var
                             (if when (concat " since " when) "")
                             (if (stringp (car ob))
                                 (car ob)
!                              (format "use `%s' instead." (car ob))))))
      (if (memq 'free-vars byte-compile-warnings)
        (if (eq base-op 'byte-varbind)
            (push var byte-compile-bound-variables)
***************
*** 2753,2763 ****
              (if (eq base-op 'byte-varset)
                  (or (memq var byte-compile-free-assignments)
                      (progn
!                       (byte-compile-warn "assignment to free variable %s" var)
                        (push var byte-compile-free-assignments)))
                (or (memq var byte-compile-free-references)
                    (progn
!                     (byte-compile-warn "reference to free variable %s" var)
                      (push var byte-compile-free-references))))))))
    (let ((tmp (assq var byte-compile-variables)))
      (unless tmp
--- 2753,2763 ----
              (if (eq base-op 'byte-varset)
                  (or (memq var byte-compile-free-assignments)
                      (progn
!                       (byte-compile-warn "assignment to free variable `%s'" 
var)
                        (push var byte-compile-free-assignments)))
                (or (memq var byte-compile-free-references)
                    (progn
!                     (byte-compile-warn "reference to free variable `%s'" var)
                      (push var byte-compile-free-references))))))))
    (let ((tmp (assq var byte-compile-variables)))
      (unless tmp
***************
*** 2958,2964 ****
  
  (defun byte-compile-subr-wrong-args (form n)
    (byte-compile-set-symbol-position (car form))
!   (byte-compile-warn "%s called with %d arg%s, but requires %s"
                     (car form) (length (cdr form))
                     (if (= 1 (length (cdr form))) "" "s") n)
    ;; get run-time wrong-number-of-args error.
--- 2958,2964 ----
  
  (defun byte-compile-subr-wrong-args (form n)
    (byte-compile-set-symbol-position (car form))
!   (byte-compile-warn "`%s' called with %d arg%s, but requires %s"
                     (car form) (length (cdr form))
                     (if (= 1 (length (cdr form))) "" "s") n)
    ;; get run-time wrong-number-of-args error.
***************
*** 3124,3130 ****
          (if (and (consp (car body))
                   (not (eq 'byte-code (car (car body)))))
              (byte-compile-warn
!       "A quoted lambda form is the second argument of fset.  This is probably
       not what you want, as that lambda cannot be compiled.  Consider using
       the syntax (function (lambda (...) ...)) instead.")))))
    (byte-compile-two-args form))
--- 3124,3130 ----
          (if (and (consp (car body))
                   (not (eq 'byte-code (car (car body)))))
              (byte-compile-warn
!       "A quoted lambda form is the second argument of `fset'.  This is 
probably
       not what you want, as that lambda cannot be compiled.  Consider using
       the syntax (function (lambda (...) ...)) instead.")))))
    (byte-compile-two-args form))
***************
*** 3507,3513 ****
      (byte-compile-set-symbol-position 'condition-case)
      (unless (symbolp var)
        (byte-compile-warn
!        "%s is not a variable-name or nil (in condition-case)" var))
      (byte-compile-push-constant var)
      (byte-compile-push-constant (byte-compile-top-level
                                 (nth 2 form) for-effect))
--- 3507,3513 ----
      (byte-compile-set-symbol-position 'condition-case)
      (unless (symbolp var)
        (byte-compile-warn
!        "`%s' is not a variable-name or nil (in condition-case)" var))
      (byte-compile-push-constant var)
      (byte-compile-push-constant (byte-compile-top-level
                                 (nth 2 form) for-effect))
***************
*** 3525,3537 ****
                                   (setq syms (cdr syms)))
                                 ok))))
                   (byte-compile-warn
!                    "%s is not a condition name or list of such (in 
condition-case)"
                     (prin1-to-string condition)))
  ;;                ((not (or (eq condition 't)
  ;;                      (and (stringp (get condition 'error-message))
  ;;                           (consp (get condition 'error-conditions)))))
  ;;                 (byte-compile-warn
! ;;                   "%s is not a known condition name (in condition-case)"
  ;;                   condition))
                )
          (setq compiled-clauses
--- 3525,3537 ----
                                   (setq syms (cdr syms)))
                                 ok))))
                   (byte-compile-warn
!                    "`%s' is not a condition name or list of such (in 
condition-case)"
                     (prin1-to-string condition)))
  ;;                ((not (or (eq condition 't)
  ;;                      (and (stringp (get condition 'error-message))
  ;;                           (consp (get condition 'error-conditions)))))
  ;;                 (byte-compile-warn
! ;;                   "`%s' is not a known condition name (in condition-case)"
  ;;                   condition))
                )
          (setq compiled-clauses
***************
*** 3627,3633 ****
              (and (eq fun 'defconst) (null (cddr form))))
        (let ((ncall (length (cdr form))))
        (byte-compile-warn
!        "%s called with %d argument%s, but %s %s"
         fun ncall
         (if (= 1 ncall) "" "s")
         (if (< ncall 2) "requires" "accepts only")
--- 3627,3633 ----
              (and (eq fun 'defconst) (null (cddr form))))
        (let ((ncall (length (cdr form))))
        (byte-compile-warn
!        "`%s' called with %d argument%s, but %s %s"
         fun ncall
         (if (= 1 ncall) "" "s")
         (if (< ncall 2) "requires" "accepts only")
***************
*** 3644,3650 ****
        `(push ',var current-load-list))
        (when (> (length form) 3)
        (when (and string (not (stringp string)))
!         (byte-compile-warn "third arg to %s %s is not a string: %s"
                             fun var string))
        `(put ',var 'variable-documentation ,string))
        (if (cddr form)         ; `value' provided
--- 3644,3650 ----
        `(push ',var current-load-list))
        (when (> (length form) 3)
        (when (and string (not (stringp string)))
!         (byte-compile-warn "third arg to `%s %s' is not a string: %s"
                             fun var string))
        `(put ',var 'variable-documentation ,string))
        (if (cddr form)         ; `value' provided




reply via email to

[Prev in Thread] Current Thread [Next in Thread]