;; Copyright (C) 1992, 1997 Free Software Foundation, Inc.
-;; Author: Jamie Zawinski <jwz@netscape.com>
+;; Author: Jamie Zawinski <jwz@jwz.org>
;; Author: Hallvard Furuseth <hbf@ulrik.uio.no>
;; Maintainer: XEmacs Development Team
;; Keywords: internal, dumped
(apply
'nconc
(mapcar
- '(lambda (x)
- (` ((or (memq (get '(, x) 'byte-optimizer)
- '(nil byte-compile-inline-expand))
- (error
- "%s already has a byte-optimizer, can't make it inline"
- '(, x)))
- (put '(, x) 'byte-optimizer 'byte-compile-inline-expand))))
+ #'(lambda (x)
+ `((or (memq (get ',x 'byte-optimizer)
+ '(nil byte-compile-inline-expand))
+ (error
+ "%s already has a byte-optimizer, can't make it inline"
+ ',x))
+ (put ',x 'byte-optimizer 'byte-compile-inline-expand)))
fns))))
(apply
'nconc
(mapcar
- '(lambda (x)
- (` ((if (eq (get '(, x) 'byte-optimizer)
- 'byte-compile-inline-expand)
- (put '(, x) 'byte-optimizer nil)))))
+ #'(lambda (x)
+ `((if (eq (get ',x 'byte-optimizer)
+ 'byte-compile-inline-expand)
+ (put ',x 'byte-optimizer nil))))
fns))))
;; This has a special byte-hunk-handler in bytecomp.el.
; (list 'put (list 'quote name)
; ''byte-optimizer ''byte-compile-inline-expand))))
-(defun make-obsolete (fn new)
- "Make the byte-compiler warn that FUNCTION is obsolete.
+(defun make-obsolete (fn new &optional when)
+ "Make the byte-compiler warn that function FN is obsolete.
The warning will say that NEW should be used instead.
-If NEW is a string, that is the `use instead' message."
+If NEW is a string, that is the `use instead' message.
+If provided, WHEN should be a string indicating when the function
+was first made obsolete, for example a date or a release number."
(interactive "aMake function obsolete: \nxObsoletion replacement: ")
(let ((handler (get fn 'byte-compile)))
(if (eq 'byte-compile-obsolete handler)
(put fn 'byte-compile 'byte-compile-obsolete)))
fn)
-(defun make-obsolete-variable (var new)
- "Make the byte-compiler warn that VARIABLE is obsolete,
+(defun make-obsolete-variable (var new &optional when)
+ "Make the byte-compiler warn that variable VAR is obsolete,
and NEW should be used instead. If NEW is a string, then that is the
-`use instead' message."
+`use instead' message.
+If provided, WHEN should be a string indicating when the variable
+was first made obsolete, for example a date or a release number."
(interactive
(list
(let ((str (completing-read "Make variable obsolete: " obarray 'boundp t)))
;; By overwhelming demand, we separate out truly obsolete symbols from
;; those that are present for GNU Emacs compatibility.
(defun make-compatible (fn new)
- "Make the byte-compiler know that FUNCTION is provided for compatibility.
+ "Make the byte-compiler know that function FN is provided for compatibility.
The warning will say that NEW should be used instead.
If NEW is a string, that is the `use instead' message."
(interactive "aMake function compatible: \nxCompatible replacement: ")
fn)
(defun make-compatible-variable (var new)
- "Make the byte-compiler know that VARIABLE is provided for compatibility.
+ "Make the byte-compiler know that variable VAR is provided for compatibility,
and NEW should be used instead. If NEW is a string, then that is the
`use instead' message."
(interactive
If (featurep 'FEATURE), evals now; otherwise adds an elt to
`after-load-alist' (which see), using FEATURE as filename if FILENAME is nil."
(let ((file (or (cdr feature) (symbol-name (car feature)))))
- `(let ((bodythunk (function (lambda () ,@body))))
+ `(let ((bodythunk #'(lambda () ,@body)))
(if (featurep ',(car feature))
(funcall bodythunk)
(setq after-load-alist (cons '(,file . (list 'lambda '() bodythunk))