[ovs-dev] [PATCH 1/2] hash: Add hash_add64().
Jarno Rajahalme
jrajahalme at nicira.com
Mon Jan 5 22:12:03 UTC 2015
Thanks for noticing this, should have tried a 32-bit build myself…
Jarno
On Dec 29, 2014, at 2:19 PM, Ben Pfaff <blp at nicira.com> wrote:
> On Mon, Dec 29, 2014 at 02:12:14PM -0800, Ben Pfaff wrote:
>> On Wed, Dec 17, 2014 at 10:30:41AM -0800, Jarno Rajahalme wrote:
>>> Add support for adding 64-bit words to hashes. This will be used by
>>> subsequent patches.
>>>
>>> Signed-off-by: Jarno Rajahalme <jrajahalme at nicira.com>
>>
>> Other than that philosophical issue:
>> Acked-by: Ben Pfaff <blp at nicira.com>
>
> Oh, also this patch breaks the 32-bit build. Clang:
>
> ../ofproto/tunnel.c:479:5: error: bit-field 'build_assert_failed' has negative
> width (-1)
> BUILD_ASSERT_DECL(sizeof *match % sizeof(uint64_t) == 0);
> ^
> ../lib/util.h:55:42: note: expanded from macro 'BUILD_ASSERT_DECL'
> extern int (*build_assert(void))[BUILD_ASSERT__(EXPR)]
> ^
> ../lib/util.h:48:38: note: expanded from macro 'BUILD_ASSERT__'
> sizeof(struct { unsigned int build_assert_failed : (EXPR) ? 1 : -1; })
> ^
> ../ofproto/tunnel.c:479:5: error: conflicting types for 'build_assert'
> ../lib/util.h:55:22: note: expanded from macro 'BUILD_ASSERT_DECL'
> extern int (*build_assert(void))[BUILD_ASSERT__(EXPR)]
> ^
> ../ofproto/ofproto-dpif.h:221:1: note: previous declaration is here
> BUILD_ASSERT_DECL(N_TABLES >= 2 && N_TABLES <= 255);
> ^
> ../lib/util.h:55:22: note: expanded from macro 'BUILD_ASSERT_DECL'
> extern int (*build_assert(void))[BUILD_ASSERT__(EXPR)]
> ^
> 2 errors generated.
> make[2]: *** [ofproto/ofproto_libofproto_la-tunnel.lo] Error 1
>
> or GCC:
>
> ../ofproto/tunnel.c: In function 'tnl_hash':
> ../ofproto/tunnel.c:479:5: error: negative width in bit-field 'build_assert_failed'
More information about the dev
mailing list