https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66600
Bug ID: 66600 Summary: sign_mask meets valgrind Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- Created attachment 35814 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35814&action=edit gzipped C source code I have gcc trunk, dated 20150617, compiled with --enable-checking=valgrind and the attached code, when compiled with -O2, produces this: ==7615== Conditional jump or move depends on uninitialised value(s) ==7615== at 0xBAB0E1: sign_mask (wide-int.h:801) ==7615== by 0xBAB0E1: neg_p<generic_wide_int<wide_int_storage> > (wide-int.h: 1692) ==7615== by 0xBAB0E1: get_int_cst_ext_nunits(tree_node*, generic_wide_int<wid e_int_storage> const&) (tree.c:1218) ==7615== by 0xBBC7E3: wide_int_to_tree(tree_node*, generic_wide_int<wide_int_ ref_storage<false> > const&) (tree.c:1399)