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

--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by David Malcolm <dmalc...@gcc.gnu.org>:

https://gcc.gnu.org/g:6832c95c0e1a58ba4d342ec002000f9d9d7db5ca

commit r13-3094-g6832c95c0e1a58ba4d342ec002000f9d9d7db5ca
Author: David Malcolm <dmalc...@redhat.com>
Date:   Wed Oct 5 13:52:59 2022 -0400

    analyzer: fix ICEs seen with call summaries on PR 107060

    This doesn't fix the various false positives seen with
    -fanalyzer-call-summaries on PR 107060, but stops it crashing at -O2.

    gcc/analyzer/ChangeLog:
            PR analyzer/107060
            * call-summary.cc
            (call_summary_replay::convert_svalue_from_summary_1): Handle NULL
            results from convert_svalue_from_summary in SK_UNARY_OP and
            SK_BIN_OP.
            * engine.cc (impl_region_model_context::on_unknown_change): Bail
            out on svalues that can't have associated state.
            * region-model-impl-calls.cc
            (region_model::impl_call_analyzer_get_unknown_ptr): New.
            * region-model.cc (region_model::on_stmt_pre): Handle
            "__analyzer_get_unknown_ptr".
            * region-model.h
            (region_model::impl_call_analyzer_get_unknown_ptr): New decl.
            * store.cc (store::replay_call_summary_cluster): Avoid trying to
            create binding clusters for base regions that shouldn't have them.

    gcc/ChangeLog:
            PR analyzer/107060
            * doc/analyzer.texi (__analyzer_get_unknown_ptr): Document.

    gcc/testsuite/ChangeLog:
            PR analyzer/107060
            * gcc.dg/analyzer/analyzer-decls.h (__analyzer_get_unknown_ptr):
            New decl.
            * gcc.dg/analyzer/call-summaries-2.c
            (test_summarized_writes_param_to_ptr_unknown): New test.

    Signed-off-by: David Malcolm <dmalc...@redhat.com>

Reply via email to