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

Reply via email to