diff --git a/src/program.c b/src/program.c index 587c9c3f42e6b83a49690bcea4984290d243bdef..10c08c376f7b27c534e04416bf4e1b596b0dfdd2 100644 --- a/src/program.c +++ b/src/program.c @@ -5,7 +5,7 @@ \*/ /**/ #include "global.h" -RCSID("$Id: program.c,v 1.257 2000/08/10 17:46:34 grubba Exp $"); +RCSID("$Id: program.c,v 1.258 2000/08/10 17:51:34 grubba Exp $"); #include "program.h" #include "object.h" #include "dynamic_buffer.h" @@ -1087,7 +1087,7 @@ int sizeof_variable(int run_time_type) } } -static int alignof_variable(int run_time_type) +static ptrdiff_t alignof_variable(int run_time_type) { switch(run_time_type) { @@ -1384,8 +1384,8 @@ PMOD_EXPORT struct program *debug_end_program(void) */ PMOD_EXPORT size_t low_add_storage(size_t size, size_t alignment, int modulo_orig) { - long offset; - int modulo; + ptrdiff_t offset; + ptrdiff_t modulo; if(!size) return Pike_compiler->new_program->storage_needed; @@ -1428,11 +1428,10 @@ PMOD_EXPORT size_t low_add_storage(size_t size, size_t alignment, int modulo_ori if( (offset /* + OFFSETOF(object,storage) */ - modulo_orig ) % alignment ) fatal("add_storage failed horribly(2) %ld %ld %ld %ld!\n", - (long)offset, + DO_NOT_WARN((long)offset), (long)0 /* + OFFSETOF(object,storage) */, (long)modulo_orig, - (long)alignment - ); + DO_NOT_WARN((long)alignment)); #endif @@ -1659,7 +1658,8 @@ void low_inherit(struct program *p, INT32 flags, struct pike_string *name) { - int e, inherit_offset, storage_offset; + int e; + ptrdiff_t inherit_offset, storage_offset; struct inherit inherit; struct pike_string *s; @@ -2782,12 +2782,12 @@ int find_shared_string_identifier(struct pike_string *name, #ifdef FIND_FUNCTION_HASHSIZE if(prog -> flags & PROGRAM_FIXED) { - unsigned int hashval; - hashval=my_hash_string(name); - hashval+=prog->id; - hashval^=(unsigned long)prog; - hashval-=name->str[0]; - hashval%=FIND_FUNCTION_HASHSIZE; + size_t hashval; + hashval = my_hash_string(name); + hashval += prog->id; + hashval ^= (size_t)prog; + hashval -= name->str[0]; + hashval %= FIND_FUNCTION_HASHSIZE; if(is_same_string(cache[hashval].name,name) && cache[hashval].id==prog->id) return cache[hashval].fun; @@ -3087,7 +3087,7 @@ PMOD_EXPORT char *get_line(unsigned char *pc,struct program *prog,INT32 *linep) { static char *file, *cnt; static INT32 off,line,pid; - INT32 offset; + ptrdiff_t offset; if (prog == 0) return "Unkown program"; offset = pc - prog->program; @@ -3145,7 +3145,7 @@ void my_yyerror(char *fmt,...) ATTRIBUTE((format(printf,1,2))) VSPRINTF(buf, fmt, args); #endif /* HAVE_VSNPRINTF */ - if((long)strlen(buf) >= (long)sizeof(buf)) + if((size_t)strlen(buf) >= (size_t)sizeof(buf)) fatal("Buffer overflow in my_yyerror.\n"); yyerror(buf); @@ -3643,7 +3643,7 @@ static void gc_check_program(struct program *p) #ifdef PIKE_DEBUG if(debug_gc_check(p->inherits[e].parent,T_PROGRAM,p)==-2) fprintf(stderr,"(program at 0x%lx -> inherit[%d].parent)\n", - (long)p, + DO_NOT_WARN((long)p), e); #else debug_gc_check(p->inherits[e].parent, T_PROGRAM, p); diff --git a/src/stralloc.c b/src/stralloc.c index d6dfb46b16ad1dac4be2b4bf7c21344cd7cc06e4..4d42086afacb81c181d068b093a2538ff060dcd9 100644 --- a/src/stralloc.c +++ b/src/stralloc.c @@ -25,7 +25,7 @@ #define HUGE HUGE_VAL #endif /*!HUGE*/ -RCSID("$Id: stralloc.c,v 1.92 2000/08/10 08:41:30 grubba Exp $"); +RCSID("$Id: stralloc.c,v 1.93 2000/08/10 17:57:04 grubba Exp $"); #define BEGIN_HASH_SIZE 997 #define MAX_AVG_LINK_LENGTH 3 @@ -47,7 +47,7 @@ unsigned INT32 num_strings=0; #define StrHash(s,len) low_do_hash(s,len,0) -static unsigned int low_do_hash(const void *s, int len, int size_shift) +static unsigned int low_do_hash(const void *s, ptrdiff_t len, int size_shift) { full_hash_value=hashmem(s,len<<size_shift,HASH_PREFIX<<size_shift); return full_hash_value % htable_size; @@ -59,7 +59,7 @@ static INLINE unsigned int do_hash(struct pike_string *s) } -static INLINE int find_magnitude1(const unsigned INT16 *s, int len) +static INLINE int find_magnitude1(const unsigned INT16 *s, ptrdiff_t len) { while(--len>=0) if(s[len]>=256) @@ -67,7 +67,7 @@ static INLINE int find_magnitude1(const unsigned INT16 *s, int len) return 0; } -static INLINE int find_magnitude2(const unsigned INT32 *s, int len) +static INLINE int find_magnitude2(const unsigned INT32 *s, ptrdiff_t len) { while(--len>=0) { @@ -161,8 +161,8 @@ CONVERT(2,0) CONVERT(2,1) -PMOD_EXPORT int generic_compare_strings(const void *a,int alen, int asize, - const void *b,int blen, int bsize) +PMOD_EXPORT int generic_compare_strings(const void *a, ptrdiff_t alen, int asize, + const void *b, ptrdiff_t blen, int bsize) { #define TWO_SIZES(X,Y) (((X)<<2)+(Y)) if(alen != blen) return 0; @@ -180,8 +180,8 @@ PMOD_EXPORT int generic_compare_strings(const void *a,int alen, int asize, PMOD_EXPORT void generic_memcpy(PCHARP to, - PCHARP from, - int len) + PCHARP from, + ptrdiff_t len) { #ifdef PIKE_DEBUG if(len<0) @@ -285,7 +285,7 @@ static int improper_zero_termination(struct pike_string *s) * This assumes that the string is minimized!!!! */ static struct pike_string *internal_findstring(const char *s, - int len, + ptrdiff_t len, int size_shift, int h) { @@ -444,7 +444,7 @@ static void link_pike_string(struct pike_string *s, unsigned int h) /* This could in theory have a pretty ugly complexity */ /* /Hubbe */ - unsigned INT32 save_full_hash_value=full_hash_value; + size_t save_full_hash_value = full_hash_value; need_more_hash_prefix=0; HASH_PREFIX=HASH_PREFIX*2; @@ -456,7 +456,7 @@ static void link_pike_string(struct pike_string *s, unsigned int h) base_table[h]=0; while(tmp) { - unsigned int h2; + size_t h2; struct pike_string *tmp2=tmp; /* First unlink */ tmp=tmp2->next; @@ -493,12 +493,12 @@ PMOD_EXPORT struct pike_string *debug_begin_wide_shared_string(size_t len, int s */ PMOD_EXPORT struct pike_string *low_end_shared_string(struct pike_string *s) { - int len,h; + ptrdiff_t len, h; struct pike_string *s2; - len=s->len; - h=do_hash(s); - s2=internal_findstring(s->str,len,s->size_shift,h); + len = s->len; + h = do_hash(s); + s2 = internal_findstring(s->str,len,s->size_shift,h); #ifdef PIKE_DEBUG if(s2==s) fatal("end_shared_string called twice! (or something like that)\n"); diff --git a/src/stralloc.h b/src/stralloc.h index 27bedcf3d128ee64baea6ed4588c276753d9d291..87c1a9b2326f96f64078bd55ccbbf2e561537386 100644 --- a/src/stralloc.h +++ b/src/stralloc.h @@ -5,7 +5,7 @@ \*/ /* - * $Id: stralloc.h,v 1.51 2000/08/10 08:42:26 grubba Exp $ + * $Id: stralloc.h,v 1.52 2000/08/10 17:57:17 grubba Exp $ */ #ifndef STRALLOC_H #define STRALLOC_H @@ -157,11 +157,11 @@ CONVERT(1,0) CONVERT(1,2) CONVERT(2,0) CONVERT(2,1) -PMOD_EXPORT int generic_compare_strings(const void *a,int alen, int asize, - const void *b,int blen, int bsize); +PMOD_EXPORT int generic_compare_strings(const void *a, ptrdiff_t alen, int asize, + const void *b, ptrdiff_t blen, int bsize); PMOD_EXPORT void generic_memcpy(PCHARP to, PCHARP from, - int len); + ptrdiff_t len); PMOD_EXPORT INLINE void pike_string_cpy(PCHARP to, struct pike_string *from); PMOD_EXPORT struct pike_string *binary_findstring(const char *foo,