Re: [PATCH] hash: silence spurious clang warning

2010-08-31 Thread Jim Meyering
Eric Blake wrote: > On 08/31/2010 08:11 AM, Eric Blake wrote: >> On 08/31/2010 02:10 AM, Jim Meyering wrote: >>> Eric, I've listed you as an author, so will wait for your ACK. >>> From 5bcff7b85b7b88fa4809ad874a1203e27abed085 Mon Sep 17 00:00:00 2001 >>> From: Eric Blake >>> Date: Tue, 31 Aug

Re: [PATCH] hash: silence spurious clang warning

2010-08-31 Thread Eric Blake
On 08/31/2010 08:11 AM, Eric Blake wrote: On 08/31/2010 02:10 AM, Jim Meyering wrote: Eric, I've listed you as an author, so will wait for your ACK. From 5bcff7b85b7b88fa4809ad874a1203e27abed085 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Tue, 31 Aug 2010 10:06:16 +0200 Subject: [PATCH] h

Re: [PATCH] hash: silence spurious clang warning

2010-08-31 Thread Eric Blake
On 08/31/2010 02:10 AM, Jim Meyering wrote: Eric, I've listed you as an author, so will wait for your ACK. From 5bcff7b85b7b88fa4809ad874a1203e27abed085 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Tue, 31 Aug 2010 10:06:16 +0200 Subject: [PATCH] hash: factor, and guard against misbehaving

Re: [PATCH] hash: silence spurious clang warning

2010-08-31 Thread Jim Meyering
Eric Blake wrote: > On 08/30/2010 05:09 PM, Bruno Haible wrote: >> Hi Eric, >> >>> - if (! (bucket< table->bucket_limit)) >>> + if (! (bucket&& bucket< table->bucket_limit)) >>> abort (); >> >> I would not apply this, because it causes a slowdown at runtime >> for no good reason. > > Hmm

Re: [PATCH] hash: silence spurious clang warning

2010-08-30 Thread Jim Meyering
Bruno Haible wrote: > Hi Eric, > >> - if (! (bucket < table->bucket_limit)) >> + if (! (bucket && bucket < table->bucket_limit)) >> abort (); > > I would not apply this, because it causes a slowdown at runtime > for no good reason. > > I think the paragraph that Paul cited just three hours

Re: [PATCH] hash: silence spurious clang warning

2010-08-30 Thread Eric Blake
On 08/30/2010 05:09 PM, Bruno Haible wrote: Hi Eric, - if (! (bucket< table->bucket_limit)) + if (! (bucket&& bucket< table->bucket_limit)) abort (); I would not apply this, because it causes a slowdown at runtime for no good reason. Hmm - I see the point of the original abort(),

Re: [PATCH] hash: silence spurious clang warning

2010-08-30 Thread Bruno Haible
Hi Eric, > - if (! (bucket < table->bucket_limit)) > + if (! (bucket && bucket < table->bucket_limit)) > abort (); I would not apply this, because it causes a slowdown at runtime for no good reason. I think the paragraph that Paul cited just three hours ago "Don't make the program ugl

[PATCH] hash: silence spurious clang warning

2010-08-30 Thread Eric Blake
* lib/hash.c (hash_get_next): Aid clang analysis. Signed-off-by: Eric Blake --- Jim, should we apply this? As far as I can tell, this is an example of a shortfall in clang 2.7, as shipped in Fedora 13. Clang assumed that the for loop at line 310 is skipped because cursor is NULL, which implies