On 04/04/2017 09:07 AM, Alexander Ivchenko wrote:
Hi,
When creating static bounds for foo below we end up with:
*((unsigned long *) &__chkp_bounds_of_foo + 8) =
~(__builtin_ia32_sizeof (foo) + ((long unsigned int) &foo +
18446744073709551615));
This fails in gimplify_function_tree with gcc_assert (!VOID_TYPE_P
(TREE_TYPE (*expr_p)));
Is it OK?
gcc/ChangeLog:
2017-04-04 Alexander Ivchenko <aivch...@gmail.com>
* tree-chkp.c (chkp_get_bounds_for_decl_addr):
assigning zero bounds to void variables
gcc/testsuite/ChangeLog:
2017-04-04 Alexander Ivchenko <aivch...@gmail.com>
* gcc.target/i386/mpx/PR79987.c: New test.
I've put this (and other CHKP fixes) in the queue for gcc-8 as AFAICT
it's not a regression.
Jeff