Eric Blake wrote: > Eric Blake <ebb9 <at> byu.net> writes: >> I got bored and attempted this. This implementation still passes the m4 >> testsuite, although there might be corner cases not exercised by m4 (such as >> shrinking the table on hash_delete) that I got wrong, so I'm posting it for >> review now. In particular, I think I need to use xalloc_oversized in more >> places. > > In fact, the m4 testsuite never even triggered a rehash (so guess what I'm > patching m4 to do today ;), but running autoconf on coreutils caused a > coredump, due to a rather stupid bug in my placement of the failure label. > Here's what I squashed to fix things:
Thanks. I'd noticed ;-) I noticed another problem: this fails when n_buckets_used is 0: size_t needed = table->n_buckets_used - 1; Would you please post (or push somewhere) your patches? Trying to reconstruct everything was not trivial, since one patch was corrupted (@@ lines wrapped) and, even once repaired, it applied only with two failed hunks.