comparison lisp/loadhist.el @ 5567:3bc58dc9d688

Replace #'flet by #'labels where appropriate, core code. lisp/ChangeLog addition: 2011-09-07 Aidan Kehoe <kehoea@parhasard.net> * simple.el (transpose-subr): * specifier.el (let-specifier): * specifier.el (derive-device-type-from-tag-set): * test-harness.el (batch-test-emacs): * x-compose.el (alias-colon-to-doublequote): * mule/chinese.el (make-chinese-cns11643-charset): * mule/mule-cmds.el (set-locale-for-language-environment): * mule/mule-cmds.el (set-language-environment-coding-systems): * mule/mule-x-init.el (x-use-halfwidth-roman-font): * about.el (about-xemacs): * about.el (about-hackers): * diagnose.el (show-memory-usage): * diagnose.el (show-object-memory-usage-stats): * diagnose.el (show-mc-alloc-memory-usage): * diagnose.el (show-gc-stats): * dialog.el (make-dialog-box): * faces.el: * faces.el (Face-frob-property): * faces.el (set-face-stipple): * glyphs.el: * glyphs.el (init-glyphs): Removed. * help-macro.el (make-help-screen): * info.el (Info-construct-menu): * keymap.el (key-sequence-list-description): * lisp-mode.el (construct-lisp-mode-menu): * loadhist.el (unload-feature): * minibuf.el (get-user-response): * mouse.el (default-mouse-track-check-for-activation): * mouse.el (mouse-track-insert-1): Follow my own advice from the last commit and use #'labels instead of #'flet in core code.
author Aidan Kehoe <kehoea@parhasard.net>
date Wed, 07 Sep 2011 21:21:36 +0100
parents 308d34e9f07d
children 071b810ceb18
comparison
equal deleted inserted replaced
5566:4654c01af32b 5567:3bc58dc9d688
173 (error "Loaded libraries %s depend on %s" 173 (error "Loaded libraries %s depend on %s"
174 (prin1-to-string dependents) file)))) 174 (prin1-to-string dependents) file))))
175 (let* ((flist (feature-symbols feature)) 175 (let* ((flist (feature-symbols feature))
176 (file (car flist)) 176 (file (car flist))
177 (unloading-module nil)) 177 (unloading-module nil))
178 (flet ((reset-aload (x) 178 (labels ((reset-aload (x)
179 (let ((aload (get x 'autoload))) 179 (let ((aload (get x 'autoload)))
180 (if aload (fset x (cons 'autoload aload)))))) 180 (if aload (fset x (cons 'autoload aload))))))
181 (mapc 181 (mapc
182 #'(lambda (x) 182 #'(lambda (x)
183 (cond ((stringp x) nil) 183 (cond ((stringp x) nil)
184 ((consp x) 184 ((consp x)
185 ;; Remove any feature names that this file provided. 185 ;; Remove any feature names that this file provided.
186 (if (eq (car x) 'provide) 186 (if (eq (car x) 'provide)
187 (setq features (delq (cdr x) features)) 187 (setq features (delq (cdr x) features))
188 (if (eq (car x) 'module) 188 (if (eq (car x) 'module)
189 (setq unloading-module t)))) 189 (setq unloading-module t))))
190 ((and (boundp x) 190 ((and (boundp x)
191 (fboundp x)) 191 (fboundp x))
192 (makunbound x) 192 (makunbound x)
193 (fmakunbound x) 193 (fmakunbound x)
194 (reset-aload x)) 194 (reset-aload x))
195 ((boundp x) 195 ((boundp x)
196 (makunbound x)) 196 (makunbound x))
197 ((fboundp x) 197 ((fboundp x)
198 (fmakunbound x) 198 (fmakunbound x)
199 (reset-aload x)))) 199 (reset-aload x))))
200 (cdr flist))) 200 (cdr flist)))
201 ;; Delete the load-history element for this file. 201 ;; Delete the load-history element for this file.
202 (let ((elt (assoc file load-history))) 202 (let ((elt (assoc file load-history)))
203 (setq load-history (delq elt load-history))) 203 (setq load-history (delq elt load-history)))
204 ;; If it is a module, really unload it. 204 ;; If it is a module, really unload it.
205 (if unloading-module 205 (if unloading-module