Remove Emacs 21 stuff.
authorKatsumi Yamaoka <yamaoka@jpl.org>
Wed, 22 Sep 2010 05:19:17 +0000 (05:19 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Wed, 22 Sep 2010 05:19:17 +0000 (05:19 +0000)
time-date.el (format-seconds): Comment fix.
dgnushack.el: Don't advise byte-optimize-form-code-walker, byte-optimize-form-code-walker and make-autoload.
lpath.el: Remove Emacs 21 stuff.

lisp/ChangeLog
lisp/dgnushack.el
lisp/lpath.el
lisp/time-date.el

index 0d77ddf..574c3d5 100644 (file)
@@ -1,3 +1,13 @@
+2010-09-22  Katsumi Yamaoka  <yamaoka@jpl.org>
+
+       * time-date.el (format-seconds): Comment fix.
+
+       * dgnushack.el (toplevel): Don't advise byte-optimize-form-code-walker
+       and byte-optimize-form-code-walker.
+       (dgnushack-make-auto-load): Don't advise make-autoload.
+
+       * lpath.el: Remove Emacs 21 stuff.
+
 2010-09-21  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
        * nnml.el (nnml-generate-nov-file): Fix variable name clobbering from
index 3eddb6f..48545eb 100644 (file)
 ;  (cons 'progn (cdr form)))
 ;(defalias 'byte-compile-file-form-defsubst 'byte-compile-file-form-defun)
 
-(when (and (not (featurep 'xemacs))
-          (= emacs-major-version 21)
-          (>= emacs-minor-version 3)
-          (condition-case code
-              (let ((byte-compile-error-on-warn t))
-                (byte-optimize-form (quote (pop x)) t)
-                nil)
-            (error (string-match "called for effect"
-                                 (error-message-string code)))))
-  (defadvice byte-optimize-form-code-walker (around silence-warn-for-pop
-                                                   (form for-effect)
-                                                   activate)
-    "Silence the warning \"...called for effect\" for the `pop' form.
-It is effective only when the `pop' macro is defined by cl.el rather
-than subr.el."
-    (let (tmp)
-      (if (and (eq (car-safe form) 'car)
-              for-effect
-              (setq tmp (get 'car 'side-effect-free))
-              (not byte-compile-delete-errors)
-              (not (eq tmp 'error-free))
-              (eq (car-safe (cadr form)) 'prog1)
-              (let ((var (cadr (cadr form)))
-                    (last (nth 2 (cadr form))))
-                (and (symbolp var)
-                     (null (nthcdr 3 (cadr form)))
-                     (eq (car-safe last) 'setq)
-                     (eq (cadr last) var)
-                     (eq (car-safe (nth 2 last)) 'cdr)
-                     (eq (cadr (nth 2 last)) var))))
-         (progn
-           (put 'car 'side-effect-free 'error-free)
-           (unwind-protect
-               ad-do-it
-             (put 'car 'side-effect-free tmp)))
-       ad-do-it))))
-
-(when (and (not (featurep 'xemacs))
-          (byte-optimize-form
-           '(and (> 0 1)
-                 (message "This should not appear in the byte-code."))
-           t))
-  (defadvice byte-optimize-form-code-walker
-    (around fix-bug-in-and/or-forms (form for-effect) activate)
-    "Optimize the rest of the and/or forms.
-It has been fixed in XEmacs before releasing 21.4 and also has been
-fixed in Emacs 22."
-    (if (and for-effect (memq (car-safe form) '(and or)))
-       (let ((fn (car form))
-             (backwards (reverse (cdr form))))
-         (while (and backwards
-                     (null (setcar backwards
-                                   (byte-optimize-form (car backwards) t))))
-           (setq backwards (cdr backwards)))
-         (if (and (cdr form) (null backwards))
-             (byte-compile-log
-              "  all subforms of %s called for effect; deleted" form))
-         (when backwards
-           (setcdr backwards
-                   (mapcar 'byte-optimize-form (cdr backwards))))
-         (setq ad-return-value (cons fn (nreverse backwards))))
-      ad-do-it)))
-
 ;; Work around for an incompatibility (XEmacs 21.4 vs. 21.5), see the
 ;; following threads:
 ;;
@@ -169,7 +106,7 @@ fixed in Emacs 22."
                 (forward-sexp 1)
                 (eolp)))))
   ;; The original `with-syntax-table' uses `copy-syntax-table' which
-  ;; doesn't seem to copy modified syntax entries in XEmacs 21.5.
+  ;; doesn't seem to copy modified syntax entries in old XEmacs 21.5.
   (defmacro with-syntax-table (syntab &rest body)
     "Evaluate BODY with the SYNTAB as the current syntax table."
     `(let ((stab (syntax-table)))
@@ -392,20 +329,6 @@ dgnushack-compile."
 
 (defun dgnushack-make-auto-load ()
   (require 'autoload)
-  (unless (make-autoload '(define-derived-mode child parent name
-                           "docstring" body)
-                        "file")
-    (defadvice make-autoload (around handle-define-derived-mode activate)
-      "Handle `define-derived-mode'."
-      (if (eq (car-safe (ad-get-arg 0)) 'define-derived-mode)
-         (setq ad-return-value
-               (list 'autoload
-                     (list 'quote (nth 1 (ad-get-arg 0)))
-                     (ad-get-arg 1)
-                     (nth 4 (ad-get-arg 0))
-                     t nil))
-       ad-do-it))
-    (put 'define-derived-mode 'doc-string-elt 3))
   (let ((generated-autoload-file dgnushack-gnus-load-file)
        (make-backup-files nil)
        (autoload-package-name "gnus"))
index b2aa91c..42c3db1 100644 (file)
        rmail-swap-buffers-maybe w3-do-setup w3-parse-buffer w3-prepare-buffer
        w3-region w32-focus-frame w3m-detect-meta-charset w3m-region))
     (maybe-bind
-     '(w3m-link-map)))
-
-  (when (= emacs-major-version 21)
-    (defun canlock-insert-header (&optional id-for-key id-for-lock password))
-    (defun split-line (&optional arg))
-    (maybe-fbind
-     '(clear-string
-       coding-system-aliasee coding-system-from-name custom-autoload
-       delete-annotation delete-extent device-connection
-       device-on-window-system-p dfw-device events-to-keys find-face
-       font-lock-set-defaults get-char-table glyph-height glyph-image
-       glyph-width glyphp help-buffer int-to-char ldap-search-entries
-       mail-aliases-setup make-annotation make-event make-glyph
-       make-network-process map-extents message-xmas-redefine put-char-table
-       run-mode-hooks set-extent-property set-itimer-function
-       set-keymap-default-binding specifier-spec-list temp-directory
-       time-to-seconds ucs-to-char unicode-precedence-list unicode-to-char
-       url-generic-parse-url url-http-file-exists-p
-       valid-image-instantiator-format-p vcard-pretty-print
-       w3-coding-system-for-mime-charset window-pixel-edges window-pixel-height
-       window-pixel-width))
-    (maybe-bind
-     '(completion-styles
-       eudc-protocol filladapt-mode help-echo-owns-message itimer-list
-       ps-print-color-p smtpmail-default-smtp-server
-       w3-meta-charset-content-type-regexp
-       w3-meta-content-type-charset-regexp))))
+     '(w3m-link-map))))
 
 (when (featurep 'xemacs)
   (defun canlock-insert-header (&optional id-for-key id-for-lock password))
index 6429350..5dbd08c 100644 (file)
@@ -317,10 +317,10 @@ This function does not work for SECONDS greater than `most-positive-fixnum'."
       (setq start (match-end 0)
             spec (match-string 1 string))
       (unless (string-equal spec "%")
-       ;; `assoc-string' is not available in XEmacs or Emacs 21.  So when
-       ;; compiling Gnus (`time-date.el' is part of Gnus) with XEmacs or
-       ;; Emacs 21, we get a warning here.  But `format-seconds' is not
-       ;; used anywhere in Gnus so it's not a real problem. --rsteib
+       ;; `assoc-string' is not available in XEmacs.  So when compiling
+       ;; Gnus (`time-date.el' is part of Gnus) with XEmacs, we get
+       ;; a warning here.  But `format-seconds' is not used anywhere in
+       ;; Gnus so it's not a real problem. --rsteib
         (or (setq match (assoc-string spec units t))
             (error "Bad format specifier: `%s'" spec))
         (if (assoc-string spec usedunits t)