Use "ASET (a, i, v)" rather than "AREF (a, i) = v".
authorPaul Eggert <eggert@cs.ucla.edu>
Wed, 1 Aug 2012 20:51:44 +0000 (13:51 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Wed, 1 Aug 2012 20:51:44 +0000 (13:51 -0700)
commit4939150cb43137980c49b318bc70119b9d8ff6f7
treebcee8eb23f3a6388789bd808a5539dae6e2fc854
parent947b2afddc9f54a999125aa7e8c9a705ecb51e18
Use "ASET (a, i, v)" rather than "AREF (a, i) = v".

This how ASET and AREF are supposed to work, and makes
it easier to think about future improvements.  See
<http://lists.gnu.org/archive/html/emacs-devel/2012-08/msg00026.html>.
* charset.h (set_charset_attr): New function.
All lvalue-style uses of CHARSET_DECODER etc. changed to use it.
* lisp.h (ASET): Rewrite so as not to use AREF in an lvalue style.
(aref_addr): New function.  All uses of &AREF(...) changed.
(set_hash_key, set_hash_value, set_hash_next, set_hash_hash)
(set_hash_index): New functions.  All lvalue-style uses of
HASH_KEY etc. changed.
* keyboard.c (set_prop): New function.  All lvalue-style uses
of PROP changed.
17 files changed:
src/ChangeLog
src/charset.c
src/charset.h
src/coding.c
src/composite.c
src/composite.h
src/fns.c
src/font.c
src/keyboard.c
src/lisp.h
src/lread.c
src/menu.c
src/nsmenu.m
src/w32menu.c
src/xfaces.c
src/xfont.c
src/xmenu.c