https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65014
Bug ID: 65014 Summary: ice with error: type mismatch in shift expression Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Created attachment 34721 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34721&action=edit C++ source code The attached code does the following with trunk dated 20150211 $ ../results/bin/gcc -c bug185.cc ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp:33:49: warning: register of ‘T0’ used for multiple global register variables ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp:33:18: note: conflicts with ‘A0’ ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp:34:49: warning: register of ‘T1’ used for multiple global register variables ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp:34:18: note: conflicts with ‘A1’ ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp:35:49: warning: register of ‘T2’ used for multiple global register variables ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp:35:18: note: conflicts with ‘A2’ ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp: In function ‘void op_rol_32_T0_im(’: ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp:166:6: error: type mismatch in shift expression unsigned int unsigned int int * T0.167 = T0.166 r<< &__op_PARAM1; ../kpx_cpu/src/cpu/jit/basic-dyngen-ops.cpp:166:6: internal compiler error: verify_gimple failed 0xc05b14 verify_gimple_in_seq(gimple_statement_base*) ../../src/trunk/gcc/tree-cfg.c:4736 0x9f0710 gimplify_body(tree_node*, bool) ../../src/trunk/gcc/gimplify.c:9117 0x9f0e7c gimplify_function_tree(tree_node*) ../../src/trunk/gcc/gimplify.c:9202 0x835f42 cgraph_node::analyze() ../../src/trunk/gcc/cgraphunit.c:631 0x839c5a analyze_functions()