comparison lisp/ChangeLog @ 5523:810b77562486

Improve #'defsubst* a little, document a bug that remains. 2011-06-19 Aidan Kehoe <kehoea@parhasard.net> * cl-macs.el (defsubst*): * cl-macs.el (cl-defsubst-expand): If defaults refer to earlier args, or if there's a &rest arg, use #'proclaim-inline. Use #'symbol-macrolet instead of #'subst when replacing argument names with their values in the inline expansion; this avoids (most) instances where the symbol's function slot is used. Document a bug that occurs if the symbol is being shadowed in a lexically-contained scope.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 19 Jun 2011 19:03:39 +0100
parents 544e6336d37c
children e05d98bf9644
comparison
equal deleted inserted replaced
5522:544e6336d37c 5523:810b77562486
1 2011-06-19 Aidan Kehoe <kehoea@parhasard.net>
2
3 * cl-macs.el (defsubst*):
4 * cl-macs.el (cl-defsubst-expand):
5 If defaults refer to earlier args, or if there's a &rest arg, use
6 #'proclaim-inline.
7 Use #'symbol-macrolet instead of #'subst when replacing argument
8 names with their values in the inline expansion; this avoids
9 (most) instances where the symbol's function slot is used.
10 Document a bug that occurs if the symbol is being shadowed in a
11 lexically-contained scope.
12
1 2011-06-19 Aidan Kehoe <kehoea@parhasard.net> 13 2011-06-19 Aidan Kehoe <kehoea@parhasard.net>
2 14
3 * cl-macs.el: 15 * cl-macs.el:
4 * cl-macs.el (assoc-ignore-case, assoc-ignore-representation): 16 * cl-macs.el (assoc-ignore-case, assoc-ignore-representation):
5 * cl-macs.el (member-ignore-case): New compiler macros. 17 * cl-macs.el (member-ignore-case): New compiler macros.