[Bug middle-end/90648] [8 Regression] ICE tree check: accessed operand 4 of call_expr with 3 operands in generic_simplify_MULT_EXPR, at generic-match.c:27222

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Feb 14 13:36:00 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90648

--- Comment #14 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by Richard Guenther
<rguenth@gcc.gnu.org>:

https://gcc.gnu.org/g:b8c42b4d0a2595fb6806473f816b94cc1b222cb1

commit r9-8236-gb8c42b4d0a2595fb6806473f816b94cc1b222cb1
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Feb 5 14:04:29 2020 +0100

    middle-end/90648 fend off builtin calls with not enough arguments from
match

    This adds guards to genmatch generated code before accessing call
    expression or stmt arguments that might be out of bounds when
    the user provided bogus prototypes for what we consider builtins.

    2020-02-05  Richard Biener  <rguenther@suse.de>

        PR middle-end/90648
        * genmatch.c (dt_node::gen_kids_1): Emit number of argument
        checks before matching calls.

        * gcc.dg/pr90648.c: New testcase.


More information about the Gcc-bugs mailing list