commit - da6b9ad4417ba3206815244901e97e80fb5a46ff
commit + f9ce7ebaa6ef436f492408aa23d1ae1b6778e4c4
blob - 064dae8dd8dd7c8ae6365df380c9029dc6ae2ed5
blob + a81cec5087f86f647bb1e17a9e7f827c4868330e
--- minip_n.h
+++ minip_n.h
return many_(inp, cac, env, ps, n);
}
-#include <string.h> /* strcmp */
#include <stdlib.h> /* calloc */
#include <limits.h> /* UINT_MAX */
#include <stdint.h> /* SIZE_MAX */
/* hash (pos,sym) */
for (i=0; i < sizeof inp.p; i++)
h0 = h0 * 33 + ((unsigned char *)&inp.p)[i];
- for (i=0; sym[i] != '\0'; i++)
- h0 = h0 * 33 + (unsigned char)sym[i];
+ for (i=0; i < sizeof sym; i++)
+ h0 = h0 * 33 + ((unsigned char *)&sym)[i];
/* look up (pos,sym) in cache and return if found */
/* NB: count steps, since the table could be filled with dummies */
break;
if (mem->symbol == NULL) /* dummy entry */
continue;
- if (mem->position == inp.p && strcmp(mem->symbol, sym) == 0)
+ if (mem->position == inp.p && mem->symbol == sym)
return mem->result; /* match */
}