Hello,
I'm compiling LLVM with MSVC at the moment, I've got the following
warning:
BitstreamReader.h(327) : warning C4334: '<<' : result of
32-bit
shift implicitly converted to 64 bits (was 64-bit shift intended?)
in line
uint64_t Piece = Read(NumBits);
if ((Piece & (1U << (NumBits-1))) == 0)
Is this warning relevant?
Is also Read64() instead of Read() assumed?
--
Ivan Sorokin mailto:sorokin at rain.ifmo.ru
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bitstream_reader.patch
Type: application/octet-stream
Size: 743 bytes
Desc: not available
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20090620/b93b2cbc/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bitstream_reader_ull_read64.patch
Type: application/octet-stream
Size: 863 bytes
Desc: not available
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20090620/b93b2cbc/attachment-0001.obj>
On Jun 20, 2009, at 6:55 AM, Ivan Sorokin wrote:> Hello, > > I'm compiling LLVM with MSVC at the moment, I've got the following > warning: > > BitstreamReader.h(327) : warning C4334: '<<' : result of 32-bit > shift implicitly converted to 64 bits (was 64-bit shift intended?) > > in line > > uint64_t Piece = Read(NumBits); > if ((Piece & (1U << (NumBits-1))) == 0) > > Is this warning relevant? > > Is also Read64() instead of Read() assumed?Yes, the code was quite broken. Other people have applied some patches in the meantime, but it was still not right. Please see if this fixes the issues, thanks! http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090706/080250.html -Chris