> When cadr is called interpretively, the binding of x is like any
> other binding.
Sure, but the binding can't possible have any effect on the result.
In the particular case of cadr, it can't, because no non-primitive
functions are called. If the compiler could detect this kind of case,
it could do the optimization safely.
However, if the defsubst calls some non-primitives, they could refer
to the variable, so failing to bind it would be unsafe.
Implementing the optimization in the former case would be useful,
and I will put it in etc/TODO, but it should not be done until
after the release.
_______________________________________________
Emacs-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/emacs-devel