I've pushed the following changes to releases/gcc-13 as r13-8741-g89feb3557a0188 through r13-8761-gb7a2697733d19a.
Successfully bootstrapped & regrtested on x86_64-pc-linux-gnu. Successful run of analyzer integration tests on x86_64-pc-linux-gnu. Lightly manually tested for patches that didn't have automated test coverage, and where the patches needing non-trivial changes. * [pushed] analyzer: add caching to globals with initializers [PR110112] * https://gcc.gnu.org/pipermail/gcc-patches/2023-June/621205.html Trunk: r14-1664-gfe9771b59f576f. gcc 13: r13-8741-g89feb3557a0188 * analyzer: Fix allocation size false positive on conjured svalue [PR109577] Trunk: r14-1684-g1d57a2232575913ad1085bac0ba5e22b58185179 gcc 13: r13-8742-gccf8d3e3d26c6b * testsuite: Add more allocation size tests for conjured svalues [PR110014] Trunk: r14-1685-g39adc5eebd61fd276f3f1ef9d7228756a35bd0cb gcc 13: r13-8743-ge0c52905f666e3 * [pushed 1/2] jit: avoid using __vector in testcase [PR110466] * https://gcc.gnu.org/pipermail/gcc-patches/2023-June/623343.html Trunk: r14-2222-g6735d660839533 gcc 13: r13-8744-gb38472ffc1e631 * [pushed 2/2] jit.exp: handle dwarf version mismatch in jit-check-debug-info [PR110466] * https://gcc.gnu.org/pipermail/gcc-patches/2023-June/623344.html Trunk: r14-2223-gc3c0ba5436170e. gcc 13: r13-8745-g60dcb710b6b4aa * [pushed] analyzer: fix ICE on division of tainted floating-point values [PR110700] * https://gcc.gnu.org/pipermail/gcc-patches/2023-July/624972.html Trunk: r14-2658-gb86c0fe327a519. gcc 13: r13-8746-g0df1ee083434ac * [committed] analyzer: fix ICE on zero-sized arrays [PR110882] * https://gcc.gnu.org/pipermail/gcc-patches/2023-August/626226.html Trunk: r14-2955-gc62f93d1e0383d. gcc 13: r13-8747-ga0b13d0860848d * [committed] testsuite, analyzer: add test case [PR108171] * https://gcc.gnu.org/pipermail/gcc-patches/2023-August/626247.html Trunk: r14-2957-gf80efa49b7a163. gcc 13: r13-8748-g44968a0e00f656 * [PATCH] gcc/jit/jit-recording.cc: recording::global::write_to_dump: Avoid crashes when writing psuedo-C for globals with string initializers. * https://gcc.gnu.org/pipermail/gcc-patches/2023-October/634269.html * Trunk: r14-4923-gac66744d94226a gcc 13: r13-8749-gb8c772cae97b54 * [pushed] analyzer: fix ICE for 2 bits before the start of base region [PR112889] * https://gcc.gnu.org/pipermail/gcc-patches/2023-December/639853.html * (cherry picked from commit r14-6297-g775aeabcb870b7) gcc 13: r13-8750-ga1cb188cb2ca2a (test moved to gcc.dg) * [pushed] analyzer: fix deref-before-check false positives due to inlining [PR112790] * https://gcc.gnu.org/pipermail/gcc-patches/2024-January/641817.html * (cherry picked from commit r14-6918-g5743e1899d5964) gcc 13: r13-8751-g994477c41049d4 (test moved to gcc.dg) * [pushed] analyzer: casting all zeroes should give all zeroes [PR113333] * https://gcc.gnu.org/pipermail/gcc-patches/2024-January/643059.html * (backported from commit r14-7265-gd235bf2e807c5f) gcc 13: r13-8752-g132eb1a210bc78 * [pushed] analyzer: fix defaults in compound assignments from non-zero offsets [PR112969] * https://gcc.gnu.org/pipermail/gcc-patches/2024-January/643951.html * (backported from commit r14-8428-g6426d466779fa8) gcc 13: r13-8753-g0593151221ad21 * [pushed] analyzer: fix skipping of debug stmts [PR113253] * https://gcc.gnu.org/pipermail/gcc-patches/2024-January/644615.html * (cherry picked from commit r14-8670-gcc7aebff74d896) gcc 13: r13-8754-g2c688f6afce4cb * [pushed] analyzer: fix -Wanalyzer-va-arg-type-mismatch false +ve on int types [PR111289] * https://gcc.gnu.org/pipermail/gcc-patches/2024-February/646010.html * (cherry picked from commit r14-9076-g5651ad62b08096) gcc 13: r13-8755-g67d104f3a032ee (tests moved to gcc.dg) * [pushed] analyzer: fix -Wanalyzer-deref-before-check false positive seen in loop header macro [PR109251] * https://gcc.gnu.org/pipermail/gcc-patches/2024-March/648126.html * Backported from commit r14-9586-g9093f275e0a343 (moving tests from c-c++-common to gcc.dg) gcc 13: 13-8756-ged026106ce420c * [pushed] analyzer: fix ICE due to type mismatch when replaying call summary [PR114473] * https://gcc.gnu.org/pipermail/gcc-patches/2024-March/648500.html * (cherry picked from commit r14-9697-gfdd59818e2abf6) gcc 13: r13-8757-g810d35a7e054bc * [pushed] analyzer: fix ICE and false positive with -Wanalyzer-deref-before-check [PR114408] * https://gcc.gnu.org/pipermail/gcc-patches/2024-March/648285.html * (cherry picked from commit r14-9646-g80a0cb37456c49) gcc 13: r13-8758-g96f7a3694c3e4c * [pushed] diagnostics: fix ICE on sarif output when source file is unreadable [PR111700] * https://gcc.gnu.org/pipermail/gcc-patches/2023-October/632266.html Trunk: r14-4474-g94caa6a6b4bd73. gcc 13: r13-8759-g230f672b3ed0f6 * [pushed] Fix ICE in -fdiagnostics-generate-patch [PR112684] * https://gcc.gnu.org/pipermail/gcc-patches/2024-January/643386.html * (cherry picked from commit r14-8255-ge254d1224df306) gcc 13: r13-8760-g2a6f99aef7c852 * [pushed] diagnostics: fix corrupt json/SARIF on stderr [PR114348] * https://gcc.gnu.org/pipermail/gcc-patches/2024-March/648048.html * (backported from commit r14-9554-g0bf99b1b7eda2f) gcc 13: r13-8761-gb7a2697733d19a David Malcolm (18): analyzer: add caching to globals with initializers [PR110112] jit: avoid using __vector in testcase [PR110466] jit.exp: handle dwarf version mismatch in jit-check-debug-info [PR110466] analyzer: fix ICE on division of tainted floating-point values [PR110700] analyzer: fix ICE on zero-sized arrays [PR110882] testsuite, analyzer: add test case [PR108171] analyzer: fix ICE for 2 bits before the start of base region [PR112889] analyzer: fix deref-before-check false positives due to inlining [PR112790] analyzer: casting all zeroes should give all zeroes [PR113333] analyzer: fix defaults in compound assignments from non-zero offsets [PR112969] analyzer: fix skipping of debug stmts [PR113253] analyzer: fix -Wanalyzer-va-arg-type-mismatch false +ve on int types [PR111289] analyzer: fix -Wanalyzer-deref-before-check false positive seen in loop header macro [PR109251] analyzer: fix ICE due to type mismatch when replaying call summary [PR114473] analyzer: fix ICE and false positive with -Wanalyzer-deref-before-check [PR114408] diagnostics: fix ICE on sarif output when source file is unreadable [PR111700] Fix ICE in -fdiagnostics-generate-patch [PR112684] diagnostics: fix corrupt json/SARIF on stderr [PR114348] Tim Lange (2): analyzer: Fix allocation size false positive on conjured svalue [PR109577] testsuite: Add more allocation size tests for conjured svalues [PR110014] Vibhav Pant (1): jit: dump string literal initializers correctly gcc/analyzer/call-summary.cc | 12 ++ gcc/analyzer/checker-event.cc | 40 ----- gcc/analyzer/constraint-manager.cc | 131 +++++++++++++++ gcc/analyzer/constraint-manager.h | 1 + gcc/analyzer/engine.cc | 7 + gcc/analyzer/inlining-iterator.h | 40 +++++ gcc/analyzer/kf.cc | 22 +++ gcc/analyzer/region-model-manager.cc | 9 +- gcc/analyzer/region-model.cc | 110 ++++--------- gcc/analyzer/region.cc | 77 ++++++++- gcc/analyzer/region.h | 14 +- gcc/analyzer/sm-malloc.cc | 40 +++++ gcc/analyzer/sm-taint.cc | 6 + gcc/analyzer/state-purge.cc | 9 + gcc/analyzer/store.cc | 11 +- gcc/analyzer/store.h | 10 +- gcc/analyzer/supergraph.cc | 4 + gcc/analyzer/varargs.cc | 38 ++++- gcc/diagnostic.cc | 24 +++ gcc/input.cc | 12 +- gcc/jit/jit-recording.cc | 2 +- .../diagnostic-format-sarif-file-pr111700.c | 12 ++ .../ubsan/analyzer-ice-pr114408.c | 9 + .../gcc.dg/analyzer/allocation-size-2.c | 24 ++- .../gcc.dg/analyzer/call-summaries-pr114473.c | 31 ++++ gcc/testsuite/gcc.dg/analyzer/calloc-1.c | 34 ++++ .../gcc.dg/analyzer/compound-assignment-5.c | 29 ++-- .../analyzer/compound-assignment-pr112969.c | 35 ++++ gcc/testsuite/gcc.dg/analyzer/data-model-9.c | 6 +- .../analyzer/deref-before-check-pr109251-1.c | 60 +++++++ .../analyzer/deref-before-check-pr109251-2.c | 37 +++++ .../analyzer/deref-before-check-pr112790.c | 27 +++ .../analyzer/deref-before-check-pr113253.c | 154 ++++++++++++++++++ .../analyzer/deref-before-check-pr114408.c | 22 +++ gcc/testsuite/gcc.dg/analyzer/ice-pr112889.c | 17 ++ gcc/testsuite/gcc.dg/analyzer/pr108171.c | 31 ++++ gcc/testsuite/gcc.dg/analyzer/pr109577.c | 16 ++ gcc/testsuite/gcc.dg/analyzer/pr110882.c | 18 ++ gcc/testsuite/gcc.dg/analyzer/pr96639.c | 2 +- .../gcc.dg/analyzer/realloc-pr110014.c | 25 +++ .../gcc.dg/analyzer/stdarg-pr111289-int.c | 69 ++++++++ .../gcc.dg/analyzer/stdarg-pr111289-ptr.c | 39 +++++ .../gcc.dg/analyzer/taint-divisor-2.c | 13 ++ .../gcc.dg/plugin/infoleak-pr112969.c | 52 ++++++ gcc/testsuite/gcc.dg/plugin/plugin.exp | 1 + gcc/testsuite/jit.dg/jit.exp | 4 + gcc/testsuite/jit.dg/test-expressions.c | 22 +-- gcc/toplev.cc | 4 +- 48 files changed, 1231 insertions(+), 181 deletions(-) create mode 100644 gcc/testsuite/c-c++-common/diagnostic-format-sarif-file-pr111700.c create mode 100644 gcc/testsuite/c-c++-common/ubsan/analyzer-ice-pr114408.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/call-summaries-pr114473.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/compound-assignment-pr112969.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/deref-before-check-pr109251-1.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/deref-before-check-pr109251-2.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/deref-before-check-pr112790.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/deref-before-check-pr113253.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/deref-before-check-pr114408.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/ice-pr112889.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/pr108171.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/pr109577.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/pr110882.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/realloc-pr110014.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/stdarg-pr111289-int.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/stdarg-pr111289-ptr.c create mode 100644 gcc/testsuite/gcc.dg/analyzer/taint-divisor-2.c create mode 100644 gcc/testsuite/gcc.dg/plugin/infoleak-pr112969.c -- 2.26.3