in reply to Re^6: Bidirectional lookup algorithm? (Judy)
in thread Bidirectional lookup algorithm? (Updated: further info.)
I now see only warnings in relation to left shifts. Anyway, there's obviously something else that's not the right size. (Disappointing that the Judy developers haven't ported this correctly.)
There is a heads-up in the Judy sources that might explain this.
cJU_POP0MASK(7) is defined (in JudyCommon/JudyPrivateBranch.h:129) as:
#define cJU_POP0MASK(cPopBytes) JU_LEASTBYTESMASK(cPopBytes)
Which is defined (in:JudyCommon/JudyPrivate.h:413) as:
#define JU_LEASTBYTESMASK(BYTES) \ ((0x100UL << (cJU_BITSPERBYTE * ((BYTES) - 1))) - 1)
And that is preceded by this comment:
// Note: This macro has been problematic in the past to get right and to make // portable. Its not OK on all systems to shift by the full word size. This // macro should allow shifting by 1..N bytes, where N is the word size, but // should produce a compiler warning if the macro is called with Bytes == 0.
Which may explain the continued warnings.
|
---|