https://bugs.llvm.org/show_bug.cgi?id=37771
Bug ID: 37771
Summary: Incorrect clang warning -Wconstant-conversion on
unsigned types
Product: clang
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: -New Bugs
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected], [email protected]
Found when building Linux kernel 4.14 with clang:
(https://bugs.chromium.org/p/chromium/issues/detail?id=849780).
Reduced test cases:
unsigned char test_char(void)
{
const unsigned char w = 128;
return ~w;
}
../build/char_warn.c:5:10: error: implicit conversion from 'int' to 'unsigned
char' changes value from -129 to 127
[-Werror,-Wconstant-conversion]
return ~w;
unsigned short test_short(void)
{
const unsigned short w = 0x8000;
return ~w;
}
../build/short_warn.c:5:10: error: implicit conversion from 'int' to 'unsigned
short' changes value from -32769 to 32767
[-Werror,-Wconstant-conversion]
return ~w;
--
You are receiving this mail because:
You are on the CC list for the bug._______________________________________________
llvm-bugs mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs