https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67516
Bug ID: 67516
Summary: class.c left shift of 1271241028 by 4 places cannot be
represented in type 'int'
Product: gcc
Version: 5.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: objc
Assignee: unassigned at gcc dot gnu.org
Reporter: zeccav at gmail dot com
Target Milestone: ---
Running 'make check' on objc I get many sanitizer messages as in
/home/vitti/gcc-5.2.0/libobjc/class.c:186:3: runtime error: left shift of
1271241028 by 4 places cannot be represented in type 'int'
and
/home/vitti/gcc-5.2.0/libobjc/class.c:215:3: runtime error: left shift of
1271241028 by 4 places cannot be represented in type 'int'
The target instruction is
CLASS_TABLE_HASH (length, hash, class_name);
The macro contains
HASH = (HASH << 4) ^ (HASH >> 28) ^ CLASS_NAME[INDEX];
which probably provokes the sanitizer massages.
Target: x86_64-unknown-linux-gnu