diff options
author | unknown <monty@hundin.mysql.fi> | 2002-11-09 13:26:46 +0200 |
---|---|---|
committer | unknown <monty@hundin.mysql.fi> | 2002-11-09 13:26:46 +0200 |
commit | 212fe9d13ed51de7e858dedd2af71b115270af14 (patch) | |
tree | dc4bb2a2343e6494e99b3429fc1247fa2dd18281 /mysys/hash.c | |
parent | b3a8b8bd193dc9b22b8d5bc28c894c49f6153647 (diff) | |
download | mariadb-git-212fe9d13ed51de7e858dedd2af71b115270af14.tar.gz |
Portability fixes for HP compiler and HPUX11
Docs/internals.texi:
Added protocol information
(needs to be converted to texi and merged with the old documentation)
configure.in:
Updates for HP compiler (cc)
include/my_global.h:
Add option to handle bugs in 'inline' for HP compiler
libmysql/password.c:
Portability fix (for HP compiler)
mysys/hash.c:
Portability fix (for HP compiler)
mysys/my_static.c:
Portability fix (for HPUX11)
mysys/my_static.h:
Portability fix (for HPUX11)
mysys/my_tempnam.c:
Portability fix (for HPUX11)
sql/sql_analyse.cc:
Fixed bug in decimal handling
Diffstat (limited to 'mysys/hash.c')
-rw-r--r-- | mysys/hash.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/mysys/hash.c b/mysys/hash.c index eaea6d7503f..3afd31a079b 100644 --- a/mysys/hash.c +++ b/mysys/hash.c @@ -82,7 +82,12 @@ void hash_free(HASH *hash) /* some helper functions */ -inline byte* +/* + This function is char* instead of byte* as HPUX11 compiler can't + handle inline functions that are not defined as native types +*/ + +inline char* hash_key(HASH *hash,const byte *record,uint *length,my_bool first) { if (hash->get_key) @@ -103,7 +108,7 @@ static uint hash_rec_mask(HASH *hash,HASH_LINK *pos,uint buffmax, uint maxlength) { uint length; - byte *key=hash_key(hash,pos->data,&length,0); + byte *key= (byte*) hash_key(hash,pos->data,&length,0); return hash_mask((*hash->calc_hashnr)(key,length),buffmax,maxlength); } @@ -180,10 +185,10 @@ uint calc_hashnr_caseup(const byte *key, uint len) #ifndef __SUNPRO_C /* SUNPRO can't handle this */ inline #endif -uint rec_hashnr(HASH *hash,const byte *record) +unsigned int rec_hashnr(HASH *hash,const byte *record) { uint length; - byte *key=hash_key(hash,record,&length,0); + byte *key= (byte*) hash_key(hash,record,&length,0); return (*hash->calc_hashnr)(key,length); } @@ -270,7 +275,7 @@ static void movelink(HASH_LINK *array,uint find,uint next_link,uint newlink) static int hashcmp(HASH *hash,HASH_LINK *pos,const byte *key,uint length) { uint rec_keylength; - byte *rec_key=hash_key(hash,pos->data,&rec_keylength,1); + byte *rec_key= (byte*) hash_key(hash,pos->data,&rec_keylength,1); return (length && length != rec_keylength) || (hash->flags & HASH_CASE_INSENSITIVE ? my_casecmp(rec_key,key,rec_keylength) : |