comparison lisp/emacs-lisp/byte-opt.el @ 92426:646c75baf82e

(byte-optimize-form-code-walker): Walk into the body of lambdas after byte-compile-unfold-lambda.
author Stefan Monnier <monnier@iro.umontreal.ca>
date Mon, 03 Mar 2008 03:38:21 +0000
parents 606f2d163a64
children 235b5ef31f41
comparison
equal deleted inserted replaced
92425:c6c2c9daee54 92426:646c75baf82e
381 (and (nth 1 form) 381 (and (nth 1 form)
382 (not for-effect) 382 (not for-effect)
383 form)) 383 form))
384 ((or (byte-code-function-p fn) 384 ((or (byte-code-function-p fn)
385 (eq 'lambda (car-safe fn))) 385 (eq 'lambda (car-safe fn)))
386 (byte-compile-unfold-lambda form)) 386 (byte-optimize-form-code-walker
387 (byte-compile-unfold-lambda form)
388 for-effect))
387 ((memq fn '(let let*)) 389 ((memq fn '(let let*))
388 ;; recursively enter the optimizer for the bindings and body 390 ;; recursively enter the optimizer for the bindings and body
389 ;; of a let or let*. This for depth-firstness: forms that 391 ;; of a let or let*. This for depth-firstness: forms that
390 ;; are more deeply nested are optimized first. 392 ;; are more deeply nested are optimized first.
391 (cons fn 393 (cons fn