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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Benjamin Priour <vultk...@gcc.gnu.org>:

https://gcc.gnu.org/g:9589a46ddadc8b93c224c3f84fa94746c04596bf

commit r14-1632-g9589a46ddadc8b93c224c3f84fa94746c04596bf
Author: Benjamin Priour <vultk...@gcc.gnu.org>
Date:   Thu Jun 8 11:38:08 2023 +0200

    analyzer: Standalone OOB-warning [PR109437, PR109439]

    This patch enhances -Wanalyzer-out-of-bounds that is no longer paired
    with a -Wanalyzer-use-of-uninitialized-value on out-of-bounds-read.

    This also fixes PR analyzer/109437.
    Before there could always be at most one OOB-read warning per frame because
    -Wanalyzer-use-of-uninitialized-value always terminates the analysis
    path.

    PR 109439

    gcc/analyzer/ChangeLog:

            * bounds-checking.cc (region_model::check_symbolic_bounds): Returns
whether the BASE_REG
            region access was OOB.
            (region_model::check_region_bounds): Likewise.
            * region-model.cc (region_model::get_store_value): Creates an
            unknown svalue on OOB-read access to REG.
            (region_model::check_region_access): Returns whether an unknown
svalue needs be created.
            (region_model::check_region_for_read): Passes check_region_access
return value.
            * region-model.h: Update prior function definitions.

    gcc/testsuite/ChangeLog:

            * gcc.dg/analyzer/out-of-bounds-2.c: Cleaned test for
uninitialized-value warning
            * gcc.dg/analyzer/out-of-bounds-5.c: Likewise.
            * gcc.dg/analyzer/pr101962.c: Likewise.
            * gcc.dg/analyzer/realloc-5.c: Likewise.
            * gcc.dg/analyzer/pr109439.c: New test.

Reply via email to