Something about alignment issues.
Signed-off-by: Keith Packard <keithp@keithp.com>
- .addr = (void **) &save_poly[0]
+ .addr = (void **) (void *) &save_poly[0]
- .addr = (void **) &save_poly[1]
+ .addr = (void **) (void *) &save_poly[1]
- .addr = (void **) &save_poly[2]
+ .addr = (void **) (void *) &save_poly[2]
},
{
.type = &ao_lisp_atom_type,
},
{
.type = &ao_lisp_atom_type,
- .addr = (void **) &ao_lisp_v,
+ .addr = (void **) (void *) &ao_lisp_v,
},
{
.type = &ao_lisp_cons_type,
},
{
.type = &ao_lisp_cons_type,
return AO_LISP_NIL;
#ifdef AO_LISP_SAVE
return AO_LISP_NIL;
#ifdef AO_LISP_SAVE
- struct ao_lisp_os_save *os = (struct ao_lisp_os_save *) &ao_lisp_pool[AO_LISP_POOL];
+ struct ao_lisp_os_save *os = (struct ao_lisp_os_save *) (void *) &ao_lisp_pool[AO_LISP_POOL];
ao_lisp_collect(AO_LISP_COLLECT_FULL);
os->atoms = ao_lisp_atom_poly(ao_lisp_atoms);
ao_lisp_collect(AO_LISP_COLLECT_FULL);
os->atoms = ao_lisp_atom_poly(ao_lisp_atoms);
#ifdef AO_LISP_SAVE
struct ao_lisp_os_save save;
#ifdef AO_LISP_SAVE
struct ao_lisp_os_save save;
- struct ao_lisp_os_save *os = (struct ao_lisp_os_save *) &ao_lisp_pool[AO_LISP_POOL];
+ struct ao_lisp_os_save *os = (struct ao_lisp_os_save *) (void *) &ao_lisp_pool[AO_LISP_POOL];
if (!ao_lisp_os_restore_save(&save, AO_LISP_POOL))
return ao_lisp_error(AO_LISP_INVALID, "header restore failed");
if (!ao_lisp_os_restore_save(&save, AO_LISP_POOL))
return ao_lisp_error(AO_LISP_INVALID, "header restore failed");