diff options
| author | Dmitry Antipov | 2012-08-01 11:57:09 +0400 |
|---|---|---|
| committer | Dmitry Antipov | 2012-08-01 11:57:09 +0400 |
| commit | 8271d59040b3d83fb3fc8cb23723538183b12ad4 (patch) | |
| tree | 909df79d98251334a8e2dc393d54ec47cc441756 /src/alloc.c | |
| parent | 0d26d7c4dc79554439ad96fb7d9f75aa2085e0ca (diff) | |
| download | emacs-8271d59040b3d83fb3fc8cb23723538183b12ad4.tar.gz emacs-8271d59040b3d83fb3fc8cb23723538183b12ad4.zip | |
Use INTERNAL_FIELD for symbols.
* src/lisp.h (SVAR): New macro. Adjust users.
* src/alloc.c, src/bytecode.c, src/cmds.c, src/data.c, src/doc.c, src/eval.c:
* src/fns.c, src/keyboard.c, src/lread.c, src/xterm.c: Users changed.
* admin/coccinelle/symbol.cocci: Semantic patch to replace direct
access to Lisp_Object members of struct Lisp_Symbol to SVAR.
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/src/alloc.c b/src/alloc.c index d824a6a491e..8207f022a12 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -3518,11 +3518,11 @@ Its value and function definition are void, and its property list is nil. */) | |||
| 3518 | MALLOC_UNBLOCK_INPUT; | 3518 | MALLOC_UNBLOCK_INPUT; |
| 3519 | 3519 | ||
| 3520 | p = XSYMBOL (val); | 3520 | p = XSYMBOL (val); |
| 3521 | p->xname = name; | 3521 | SVAR (p, xname) = name; |
| 3522 | p->plist = Qnil; | 3522 | SVAR (p, plist) = Qnil; |
| 3523 | p->redirect = SYMBOL_PLAINVAL; | 3523 | p->redirect = SYMBOL_PLAINVAL; |
| 3524 | SET_SYMBOL_VAL (p, Qunbound); | 3524 | SET_SYMBOL_VAL (p, Qunbound); |
| 3525 | p->function = Qunbound; | 3525 | SVAR (p, function) = Qunbound; |
| 3526 | p->next = NULL; | 3526 | p->next = NULL; |
| 3527 | p->gcmarkbit = 0; | 3527 | p->gcmarkbit = 0; |
| 3528 | p->interned = SYMBOL_UNINTERNED; | 3528 | p->interned = SYMBOL_UNINTERNED; |
| @@ -4321,7 +4321,7 @@ live_symbol_p (struct mem_node *m, void *p) | |||
| 4321 | && offset < (SYMBOL_BLOCK_SIZE * sizeof b->symbols[0]) | 4321 | && offset < (SYMBOL_BLOCK_SIZE * sizeof b->symbols[0]) |
| 4322 | && (b != symbol_block | 4322 | && (b != symbol_block |
| 4323 | || offset / sizeof b->symbols[0] < symbol_block_index) | 4323 | || offset / sizeof b->symbols[0] < symbol_block_index) |
| 4324 | && !EQ (((struct Lisp_Symbol *) p)->function, Vdead)); | 4324 | && !EQ (SVAR (((struct Lisp_Symbol *)p), function), Vdead)); |
| 4325 | } | 4325 | } |
| 4326 | else | 4326 | else |
| 4327 | return 0; | 4327 | return 0; |
| @@ -6073,8 +6073,8 @@ mark_object (Lisp_Object arg) | |||
| 6073 | break; | 6073 | break; |
| 6074 | CHECK_ALLOCATED_AND_LIVE (live_symbol_p); | 6074 | CHECK_ALLOCATED_AND_LIVE (live_symbol_p); |
| 6075 | ptr->gcmarkbit = 1; | 6075 | ptr->gcmarkbit = 1; |
| 6076 | mark_object (ptr->function); | 6076 | mark_object (SVAR (ptr, function)); |
| 6077 | mark_object (ptr->plist); | 6077 | mark_object (SVAR (ptr, plist)); |
| 6078 | switch (ptr->redirect) | 6078 | switch (ptr->redirect) |
| 6079 | { | 6079 | { |
| 6080 | case SYMBOL_PLAINVAL: mark_object (SYMBOL_VAL (ptr)); break; | 6080 | case SYMBOL_PLAINVAL: mark_object (SYMBOL_VAL (ptr)); break; |
| @@ -6105,9 +6105,9 @@ mark_object (Lisp_Object arg) | |||
| 6105 | break; | 6105 | break; |
| 6106 | default: abort (); | 6106 | default: abort (); |
| 6107 | } | 6107 | } |
| 6108 | if (!PURE_POINTER_P (XSTRING (ptr->xname))) | 6108 | if (!PURE_POINTER_P (XSTRING (SVAR (ptr, xname)))) |
| 6109 | MARK_STRING (XSTRING (ptr->xname)); | 6109 | MARK_STRING (XSTRING (SVAR (ptr, xname))); |
| 6110 | MARK_INTERVAL_TREE (STRING_INTERVALS (ptr->xname)); | 6110 | MARK_INTERVAL_TREE (STRING_INTERVALS (SVAR (ptr, xname))); |
| 6111 | 6111 | ||
| 6112 | ptr = ptr->next; | 6112 | ptr = ptr->next; |
| 6113 | if (ptr) | 6113 | if (ptr) |
| @@ -6473,7 +6473,7 @@ gc_sweep (void) | |||
| 6473 | /* Check if the symbol was created during loadup. In such a case | 6473 | /* Check if the symbol was created during loadup. In such a case |
| 6474 | it might be pointed to by pure bytecode which we don't trace, | 6474 | it might be pointed to by pure bytecode which we don't trace, |
| 6475 | so we conservatively assume that it is live. */ | 6475 | so we conservatively assume that it is live. */ |
| 6476 | int pure_p = PURE_POINTER_P (XSTRING (sym->s.xname)); | 6476 | int pure_p = PURE_POINTER_P (XSTRING (sym->s.INTERNAL_FIELD (xname))); |
| 6477 | 6477 | ||
| 6478 | if (!sym->s.gcmarkbit && !pure_p) | 6478 | if (!sym->s.gcmarkbit && !pure_p) |
| 6479 | { | 6479 | { |
| @@ -6482,7 +6482,7 @@ gc_sweep (void) | |||
| 6482 | sym->s.next = symbol_free_list; | 6482 | sym->s.next = symbol_free_list; |
| 6483 | symbol_free_list = &sym->s; | 6483 | symbol_free_list = &sym->s; |
| 6484 | #if GC_MARK_STACK | 6484 | #if GC_MARK_STACK |
| 6485 | symbol_free_list->function = Vdead; | 6485 | SVAR (symbol_free_list, function) = Vdead; |
| 6486 | #endif | 6486 | #endif |
| 6487 | ++this_free; | 6487 | ++this_free; |
| 6488 | } | 6488 | } |
| @@ -6490,7 +6490,7 @@ gc_sweep (void) | |||
| 6490 | { | 6490 | { |
| 6491 | ++num_used; | 6491 | ++num_used; |
| 6492 | if (!pure_p) | 6492 | if (!pure_p) |
| 6493 | UNMARK_STRING (XSTRING (sym->s.xname)); | 6493 | UNMARK_STRING (XSTRING (sym->s.INTERNAL_FIELD (xname))); |
| 6494 | sym->s.gcmarkbit = 0; | 6494 | sym->s.gcmarkbit = 0; |
| 6495 | } | 6495 | } |
| 6496 | } | 6496 | } |
| @@ -6675,10 +6675,10 @@ which_symbols (Lisp_Object obj, EMACS_INT find_max) | |||
| 6675 | XSETSYMBOL (tem, sym); | 6675 | XSETSYMBOL (tem, sym); |
| 6676 | val = find_symbol_value (tem); | 6676 | val = find_symbol_value (tem); |
| 6677 | if (EQ (val, obj) | 6677 | if (EQ (val, obj) |
| 6678 | || EQ (sym->function, obj) | 6678 | || EQ (SVAR (sym, function), obj) |
| 6679 | || (!NILP (sym->function) | 6679 | || (!NILP (SVAR (sym, function)) |
| 6680 | && COMPILEDP (sym->function) | 6680 | && COMPILEDP (SVAR (sym, function)) |
| 6681 | && EQ (AREF (sym->function, COMPILED_BYTECODE), obj)) | 6681 | && EQ (AREF (SVAR (sym, function), COMPILED_BYTECODE), obj)) |
| 6682 | || (!NILP (val) | 6682 | || (!NILP (val) |
| 6683 | && COMPILEDP (val) | 6683 | && COMPILEDP (val) |
| 6684 | && EQ (AREF (val, COMPILED_BYTECODE), obj))) | 6684 | && EQ (AREF (val, COMPILED_BYTECODE), obj))) |