https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79631
Bug ID: 79631 Summary: ICE tree check: expected integer_cst, have negate_expr in decompose, at tree.h:5255 Product: gcc Version: 7.0.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: gerhard.steinmetz.fort...@t-online.de Target Milestone: --- Version 5/6/7 (on x86_64 GNU/Linux) at -Os|1|2|3 and file ./gcc.dg/torture/pr71901.c $ gcc-7-20170219 -O2 -mmpx -fcheck-pointer-bounds -c pr71901.c pr71901.c: In function 'fn1.chkp': pr71901.c:5:6: internal compiler error: tree check: expected integer_cst, have negate_expr in decompose, at tree.h:5255 void fn1() ^~~ 0xea199c tree_check_failed(tree_node const*, char const*, int, char const*, ...) ../../gcc/tree.c:9815 0x5e6764 tree_check(tree_node const*, char const*, int, char const*, tree_code) ../../gcc/tree.h:3320 0x5e6764 wi::int_traits<tree_node const*>::decompose(long*, unsigned int, tree_node const*) ../../gcc/tree.h:5255 0xea6fa4 wi::int_traits<tree_node const*>::decompose(long*, unsigned int, tree_node const*) ../../gcc/tree.h:3267 0xea6fa4 wide_int_ref_storage<false>::wide_int_ref_storage<tree_node const*>(tree_node const* const&, unsigned int) ../../gcc/wide-int.h:976 0xea6fa4 generic_wide_int<wide_int_ref_storage<false> >::generic_wide_int<tree_node const*>(tree_node const* const&, unsigned int) ../../gcc/wide-int.h:753 0xea6fa4 unsigned long wi::extract_uhwi<tree_node const*>(tree_node const* const&, unsigned int, unsigned int) ../../gcc/wide-int.h:3054 0xea6fa4 tree_int_cst_sign_bit(tree_node const*) ../../gcc/tree.c:7355 0xcbada2 chkp_is_constant_addr ../../gcc/tree-chkp-opt.c:244 0xcbd81a chkp_get_check_result ../../gcc/tree-chkp-opt.c:656 0xcbf4d5 chkp_remove_check_if_pass ../../gcc/tree-chkp-opt.c:699 0xcbf4d5 chkp_remove_constant_checks ../../gcc/tree-chkp-opt.c:829 0xcbf4d5 chkp_opt_execute ../../gcc/tree-chkp-opt.c:1288 0xcbf4d5 execute ../../gcc/tree-chkp-opt.c:1344