ecl_symbol: remove unused field

symbol.dynamic was only assigned, because we already encode this information
in a bitfield using the enum ecl_stype.
This commit is contained in:
Daniel Kochmański 2022-11-21 10:15:28 +01:00
parent a886b04a9a
commit 6ad85b259f
5 changed files with 1 additions and 7 deletions

View file

@ -235,7 +235,6 @@ make_this_symbol(int i, cl_object s, int code,
default: printf("%d\n", code & ~(int)3); ecl_internal_error("Unknown package code in init_all_symbols()");
}
s->symbol.t = t_symbol;
s->symbol.dynamic = 0;
#ifdef ECL_THREADS
s->symbol.binding = ECL_MISSING_SPECIAL_BINDING;
#endif

View file

@ -514,7 +514,6 @@ cl_boot(int argc, char **argv)
*/
ECL_NIL_SYMBOL->symbol.t = t_symbol;
ECL_NIL_SYMBOL->symbol.dynamic = 0;
ECL_NIL_SYMBOL->symbol.value = ECL_NIL;
ECL_NIL_SYMBOL->symbol.name = str_NIL;
ECL_NIL_SYMBOL->symbol.gfdef = ECL_NIL;
@ -527,7 +526,6 @@ cl_boot(int argc, char **argv)
cl_num_symbols_in_core=1;
ECL_T->symbol.t = (short)t_symbol;
ECL_T->symbol.dynamic = 0;
ECL_T->symbol.value = ECL_T;
ECL_T->symbol.name = str_T;
ECL_T->symbol.gfdef = ECL_NIL;

View file

@ -434,7 +434,6 @@ ecl_new_binding_index(cl_env_ptr env, cl_object symbol)
new_index = ecl_atomic_index_incf(&cl_core.last_var_index);
}
symbol->symbol.binding = new_index;
symbol->symbol.dynamic |= 1;
}
ecl_set_finalizer_unprotected(symbol, ECL_T);
return new_index;

View file

@ -102,7 +102,6 @@ cl_make_symbol(cl_object str)
}
x = ecl_alloc_object(t_symbol);
x->symbol.name = str;
x->symbol.dynamic = 0;
#ifdef ECL_THREADS
x->symbol.binding = ECL_MISSING_SPECIAL_BINDING;
#endif /* */
@ -323,7 +322,6 @@ cl_symbol_name(cl_object x)
sym = ECL_NIL_SYMBOL;
x = cl_make_symbol(ecl_symbol_name(sym));
if (!Null(cp)) {
x->symbol.dynamic = 0;
x->symbol.stype = sym->symbol.stype;
x->symbol.value = sym->symbol.value;
x->symbol.gfdef = sym->symbol.gfdef;

View file

@ -275,7 +275,7 @@ enum ecl_stype { /* symbol type */
#define ECL_NO_TL_BINDING ((cl_object)(1 << ECL_TAG_BITS))
struct ecl_symbol {
_ECL_HDR2(stype, dynamic);/* symbol type, special-variable-p */
_ECL_HDR1(stype); /* symbol type */
cl_object value; /* global value of the symbol */
/* Coincides with cons.car */
cl_object gfdef; /* global function definition */