Here's an interesting bug, in source/Utility/DataExtractor.cpp, 
DataExtractor::GetMaxU64Bitfield:

    uint64_t bitfield_mask = ((1ul << bitfield_bit_size) - 1);

In Visual Studio 2017, ul is a 32 bit type. When I run it with a size of 36 
(from large_packed in test/API/lang/c/bitfields/main.c), I get a mask of 0x0f.
I think that should be 1ull, or (uint64_t) 1, not 1ul.

MSDN problem talking about the size of ul:
https://developercommunity.visualstudio.com/content/problem/226112/vs2017-1ul-32-is-evaluated-to-0-in-watch-window-du.html

Thoughts?
_______________________________________________
lldb-dev mailing list
lldb-dev@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev

Reply via email to