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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

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

commit r11-6281-gd8aeee11af715507e61464d390f14e4f4fde61b0
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Mon Dec 21 10:14:46 2020 +0100

    fold-const: Fix up a buffer overflow in native_encode_initializer [PR98407]

    For flexible array members we need to incrementally clear just from
    ptr + total_bytes up to new ptr + total_bytes, but memset has been called
    with the length from ptr, so was missing - total_bytes.  Additionally,
    in this code off is guaranteed to be -1 and thus o 0, so don't bother
pretending
    we could handle anything else, it would be more complicated than that.

    2020-12-21  Jakub Jelinek  <ja...@redhat.com>

            PR tree-optimization/98407
            * fold-const.c (native_encode_initializer): When handling flexible
            array members, fix up computation of length for memset.  Also
remove
            " - o" as o is always guaranteed to be 0 in this code path.

            * gcc.c-torture/compile/pr98407.c: New test.

Reply via email to