Show
Ignore:
Timestamp:
05/31/08 11:46:39 (6 months ago)
Author:
charsbar
Message:

Archive-Lha: try to silence some of the known warnings (though with quite an ugly way)

Location:
lang/perl/Archive-Lha/trunk
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • lang/perl/Archive-Lha/trunk/Lha.h

    r3588 r12893  
    3333  hash_store(self, key, newSVpv(n, 0)) 
    3434 
    35 #define create_mask(n) \ 
    36   (1 << (USHORT_BIT - 1 - n)) 
     35#define char_bit       8 
     36#define uchar_bit      8 
     37#define ushort_bit    16 
    3738 
    38 #define CHAR_BIT       8 
    39 #define UCHAR_BIT      8 
    40 #define USHORT_BIT    16 
     39#define uchar_max (1 << uchar_bit) - 1 
     40#define ushort_max (1 << ushort_bit) - 1 
    4141 
    42 #ifndef USHORT_MAX 
    43 #define USHORT_MAX (1 << USHORT_BIT) - 1 
     42#define uchar_center  (1 << (uchar_bit - 1)) 
     43#define ushort_center (1 << (ushort_bit - 1)) 
     44 
     45#ifndef min 
     46#define min(a,b) ((a) <= (b) ? (a) : (b)) 
    4447#endif 
    4548 
    46 #define UCHAR_CENTER  (1 << (UCHAR_BIT - 1)) 
    47 #define USHORT_CENTER (1 << (USHORT_BIT - 1)) 
    48 #define MIN(a,b) ((a) <= (b) ? (a) : (b)) 
     49#define create_mask(n) \ 
     50  (1 << (ushort_bit - 1 - n)) 
    4951 
    50 #define READBUF_SIZE 4096 
     52#define readbuf_size 4096 
    5153 
    5254typedef struct LhaTree { 
     
    6870  unsigned char  pos; 
    6971  unsigned short blocksize; 
    70   unsigned char  readbuf[READBUF_SIZE]; 
     72  unsigned char  readbuf[readbuf_size]; 
    7173  unsigned short readpos; 
    7274} LhaBitstream; 
  • lang/perl/Archive-Lha/trunk/Lha.xs

    r3588 r12893  
    3333 
    3434void 
    35 safe_croak(LhaStash * stash, unsigned char * dying_message) 
     35safe_croak(LhaStash * stash, char * dying_message) 
    3636{ 
    3737  destroy_stash(stash); 
     
    4040 
    4141void 
    42 output(LhaStash * stash, unsigned char * queue, unsigned int len) 
     42output(LhaStash * stash, unsigned char * queue, int len) 
    4343{ 
    4444  dSP; 
     
    5656 
    5757void 
    58 input(LhaStash * stash, unsigned int len) 
     58input(LhaStash * stash, int len) 
    5959{ 
    6060  int n; 
     
    8686{ 
    8787  return (bit->value << n) 
    88        + (bit->buf >> (CHAR_BIT - n)); 
     88       + (bit->buf >> (char_bit - n)); 
    8989} 
    9090 
     
    9999    if (stash->encoded_size > 0) { 
    100100      if (bit->readpos == 0) { 
    101         if (stash->encoded_size > READBUF_SIZE) 
    102           len = READBUF_SIZE; 
     101        if (stash->encoded_size > readbuf_size) 
     102          len = readbuf_size; 
    103103        else 
    104104          len = stash->encoded_size; 
     
    106106      } 
    107107      bit->buf = bit->readbuf[bit->readpos++]; 
    108       if (bit->readpos == READBUF_SIZE) 
     108      if (bit->readpos == readbuf_size) 
    109109        bit->readpos = 0; 
    110110      stash->encoded_size--; 
     
    112112    else 
    113113      bit->buf = 0; 
    114     bit->pos = CHAR_BIT; 
     114    bit->pos = char_bit; 
    115115  } 
    116116  bit->pos -= n; 
     
    122122peekbits(LhaStash * stash, unsigned char n) 
    123123{ 
    124   return (stash->bit->value >> (USHORT_BIT - n)); 
     124  return (stash->bit->value >> (ushort_bit - n)); 
    125125} 
    126126 
     
    146146  stash->bit->buf = 0; 
    147147  stash->bit->pos = 0; 
    148   fillbuf(stash, USHORT_BIT); 
     148  fillbuf(stash, ushort_bit); 
    149149} 
    150150 
     
    158158make_table(LhaStash * stash, LhaTable * table, unsigned short nchar) 
    159159{ 
    160   unsigned short count[USHORT_BIT + 1]; 
    161   unsigned short weight[USHORT_BIT + 1]; 
    162   unsigned short start[USHORT_BIT + 1]; 
     160  unsigned short count[ushort_bit + 1]; 
     161  unsigned short weight[ushort_bit + 1]; 
     162  unsigned short start[ushort_bit + 1]; 
    163163  unsigned short total, avail; 
    164164  unsigned short from, to; 
     
    168168  unsigned short *p; 
    169169 
    170   if (table->bit > USHORT_BIT) { 
     170  if (table->bit > ushort_bit) { 
    171171    safe_croak(stash, "Table is broken: table bit is too large"); 
    172172  } 
    173173 
    174   for(i = 1; i <= USHORT_BIT; i++) { 
     174  for(i = 1; i <= ushort_bit; i++) { 
    175175    count[i]  = 0; 
    176     weight[i] = 1 << (USHORT_BIT - i); 
     176    weight[i] = 1 << (ushort_bit - i); 
    177177  } 
    178178 
    179179  for(i = 0; i < nchar; i++) 
    180     if (table->length[i] > USHORT_BIT) { 
     180    if (table->length[i] > ushort_bit) { 
    181181      safe_croak(stash, "Table is broken: bit length is too large"); 
    182182    } 
     
    185185 
    186186  total = 0; 
    187   for(i = 1; i <= USHORT_BIT; i++) { 
     187  for(i = 1; i <= ushort_bit; i++) { 
    188188    start[i] = total; 
    189189    total += weight[i] * count[i]; 
    190190  } 
    191   if (total & USHORT_MAX) { 
     191  if (total & ushort_max) { 
    192192    safe_croak(stash, "Table is broken: total mismatch"); 
    193193  } 
    194194 
    195   bits_to_shift = USHORT_BIT - table->bit; 
     195  bits_to_shift = ushort_bit - table->bit; 
    196196  for(i = 1; i <= table->bit; i++) { 
    197197    start[i]  >>= bits_to_shift; 
     
    200200 
    201201  from = start[table->bit + 1] >> bits_to_shift; 
    202   to   = MIN(1 << table->bit, table->size); 
     202  to   = min(1 << table->bit, table->size); 
    203203  if (from) 
    204204    for(i = from; i < to; i++) 
     
    212212    l = start[bit] + weight[bit]; 
    213213    if (bit <= table->bit) { 
    214       l = MIN(l, table->size); 
     214      l = min(l, table->size); 
    215215      for(j = start[bit]; j < l; j++) 
    216216        table->table[j] = i; 
     
    229229          *p = avail++; 
    230230        } 
    231         if (j & USHORT_CENTER) 
     231        if (j & ushort_center) 
    232232          p = &(stash->tree->right[*p]); 
    233233        else 
     
    264264  else { 
    265265    i = 0; 
    266     while (i < MIN(n, stash->pt->length_size)) { 
     266    while (i < min(n, stash->pt->length_size)) { 
    267267      c = peekbits(stash, 3); 
    268268      if (c != 7) 
     
    305305  else { 
    306306    i = 0; 
    307     while (i < MIN(n, stash->c->length_size)) { 
     307    while (i < min(n, stash->c->length_size)) { 
    308308      c = stash->pt->table[peekbits(stash, stash->pt->bit)]; 
    309309      if (c >= stash->NT) { 
     
    343343 
    344344  if (stash->bit->blocksize == 0) { 
    345     stash->bit->blocksize = getbits(stash, USHORT_BIT); 
     345    stash->bit->blocksize = getbits(stash, ushort_bit); 
    346346    read_pt_len(stash, stash->NT, stash->TBIT, 3); 
    347347    read_c_len(stash); 
     
    402402{ 
    403403  while (len-- > 0) 
    404     crc = crctable[(crc ^ *str++) & UCHAR_MAX] ^ (crc >> CHAR_BIT); 
     404    crc = crctable[(crc ^ *str++) & uchar_max] ^ (crc >> char_bit); 
    405405  return crc; 
    406406} 
     
    497497    init_bitstream(stash); 
    498498 
    499     adjust = (1 << UCHAR_BIT) - self_uchar("THRESHOLD"); 
     499    adjust = (1 << uchar_bit) - self_uchar("THRESHOLD"); 
    500500    crc16  = 0; 
    501501    loc    = 0; 
     
    503503    while ( total < stash->original_size ) { 
    504504      c = decode_c(stash); 
    505       if (c <= UCHAR_MAX) { 
     505      if (c <= uchar_max) { 
    506506        queue[loc++] = c; 
    507507        if (loc == dicsize) { 
     
    546546 
    547547unsigned short 
    548 xs_update(unsigned short crc, SV * str, unsigned int len) 
     548xs_update(unsigned short crc, SV * str, int len) 
    549549  CODE: 
    550550    RETVAL = calc_crc16(crc, SvPV(str, len), len);