remove pointer to long conversions - part 2 of 3 (trunk only)
Remove some more code that forced pointers into a long int, and vice versa where information could be lost (P64 platforms such as WIN64 have a 64 bit pointer size, but a 32 bit long size.) This 2nd part deals with timeout functions switching some arguments from type genericptr_t to 'anything'. Like part 1, this needs to increment EDITLEVEL in patchlevel.h.
This commit is contained in:
@@ -46,7 +46,7 @@ E boolean FDECL(catch_lit, (struct obj *));
|
||||
E void FDECL(use_unicorn_horn, (struct obj *));
|
||||
E boolean FDECL(tinnable, (struct obj *));
|
||||
E void NDECL(reset_trapset);
|
||||
E void FDECL(fig_transform, (genericptr_t, long));
|
||||
E void FDECL(fig_transform, (ANY_P *, long));
|
||||
E int FDECL(unfixable_trouble_count,(BOOLEAN_P));
|
||||
|
||||
/* ### artifact.c ### */
|
||||
@@ -263,8 +263,8 @@ E void NDECL(zap_dig);
|
||||
E struct obj *FDECL(bury_an_obj, (struct obj *));
|
||||
E void FDECL(bury_objs, (int,int));
|
||||
E void FDECL(unearth_objs, (int,int));
|
||||
E void FDECL(rot_organic, (genericptr_t, long));
|
||||
E void FDECL(rot_corpse, (genericptr_t, long));
|
||||
E void FDECL(rot_organic, (ANY_P *, long));
|
||||
E void FDECL(rot_corpse, (ANY_P *, long));
|
||||
E struct obj *FDECL(buried_ball, (coord *));
|
||||
E void NDECL(buried_ball_to_punishment);
|
||||
E void NDECL(buried_ball_to_freedom);
|
||||
@@ -340,7 +340,7 @@ E void FDECL(schedule_goto, (d_level *,BOOLEAN_P,BOOLEAN_P,int,
|
||||
const char *,const char *));
|
||||
E void NDECL(deferred_goto);
|
||||
E boolean FDECL(revive_corpse, (struct obj *));
|
||||
E void FDECL(revive_mon, (genericptr_t, long));
|
||||
E void FDECL(revive_mon, (ANY_P *, long));
|
||||
E int NDECL(donull);
|
||||
E int NDECL(dowipe);
|
||||
E void FDECL(set_wounded_legs, (long,int));
|
||||
@@ -2119,15 +2119,15 @@ E void FDECL(fall_asleep, (int, BOOLEAN_P));
|
||||
E void FDECL(attach_egg_hatch_timeout, (struct obj *));
|
||||
E void FDECL(attach_fig_transform_timeout, (struct obj *));
|
||||
E void FDECL(kill_egg, (struct obj *));
|
||||
E void FDECL(hatch_egg, (genericptr_t, long));
|
||||
E void FDECL(hatch_egg, (ANY_P *, long));
|
||||
E void FDECL(learn_egg_type, (int));
|
||||
E void FDECL(burn_object, (genericptr_t, long));
|
||||
E void FDECL(burn_object, (ANY_P *, long));
|
||||
E void FDECL(begin_burn, (struct obj *, BOOLEAN_P));
|
||||
E void FDECL(end_burn, (struct obj *, BOOLEAN_P));
|
||||
E void NDECL(do_storms);
|
||||
E boolean FDECL(start_timer, (long, SHORT_P, SHORT_P, genericptr_t));
|
||||
E long FDECL(stop_timer, (SHORT_P, genericptr_t));
|
||||
E long FDECL(peek_timer, (SHORT_P,genericptr_t));
|
||||
E boolean FDECL(start_timer, (long, SHORT_P, SHORT_P, ANY_P *));
|
||||
E long FDECL(stop_timer, (SHORT_P, ANY_P *));
|
||||
E long FDECL(peek_timer, (SHORT_P,ANY_P *));
|
||||
E void NDECL(run_timers);
|
||||
E void FDECL(obj_move_timers, (struct obj *, struct obj *));
|
||||
E void FDECL(obj_split_timers, (struct obj *, struct obj *));
|
||||
@@ -2549,7 +2549,7 @@ E int FDECL(burn_floor_paper, (int,int,BOOLEAN_P,BOOLEAN_P));
|
||||
E void FDECL(buzz, (int,int,XCHAR_P,XCHAR_P,int,int));
|
||||
E void FDECL(melt_ice, (XCHAR_P,XCHAR_P,const char *));
|
||||
E void FDECL(start_melt_ice_timeout, (XCHAR_P,XCHAR_P));
|
||||
E void FDECL(melt_ice_away, (genericptr_t, long));
|
||||
E void FDECL(melt_ice_away, (ANY_P *, long));
|
||||
E int FDECL(zap_over_floor, (XCHAR_P,XCHAR_P,int,boolean *,SHORT_P));
|
||||
E void FDECL(fracture_rock, (struct obj *));
|
||||
E boolean FDECL(break_statue, (struct obj *));
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
* Incrementing EDITLEVEL can be used to force invalidation of old bones
|
||||
* and save files.
|
||||
*/
|
||||
#define EDITLEVEL 34
|
||||
#define EDITLEVEL 35
|
||||
|
||||
#define COPYRIGHT_BANNER_A \
|
||||
"NetHack, Copyright 1985-2006"
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
#define TIMEOUT_H
|
||||
|
||||
/* generic timeout function */
|
||||
typedef void FDECL((*timeout_proc), (genericptr_t, long));
|
||||
typedef void FDECL((*timeout_proc), (ANY_P *, long));
|
||||
|
||||
/* kind of timer */
|
||||
#define TIMER_LEVEL 0 /* event specific to level */
|
||||
@@ -38,7 +38,7 @@ typedef struct fe {
|
||||
unsigned long tid; /* timer ID */
|
||||
short kind; /* kind of use */
|
||||
short func_index; /* what to call when we time out */
|
||||
genericptr_t arg; /* pointer to timeout argument */
|
||||
anything arg; /* pointer to timeout argument */
|
||||
Bitfield (needs_fixup,1); /* does arg need to be patched? */
|
||||
} timer_element;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user