analyzer: fix ICE when pipe's arg isn't a pointer [PR107486]
authorDavid Malcolm <dmalcolm@redhat.com>
Thu, 3 Nov 2022 14:21:00 +0000 (10:21 -0400)
committerDavid Malcolm <dmalcolm@redhat.com>
Thu, 3 Nov 2022 14:21:53 +0000 (10:21 -0400)
commit5acc10a9ea66411e1712fabc94f9f29892b0d607
treebe1193c95fe6923712dba722ce97580c914e8589
parent6629444170f85e9b1e243aa07e3e07a8b9f8fce5
analyzer: fix ICE when pipe's arg isn't a pointer [PR107486]

gcc/analyzer/ChangeLog:
PR analyzer/107486
* analyzer.cc (is_pipe_call_p): New.
* analyzer.h (is_pipe_call_p): New decl.
* region-model.cc (region_model::on_call_pre): Use it.
(region_model::on_call_post): Likewise.

gcc/testsuite/ChangeLog:
PR analyzer/107486
* gcc.dg/analyzer/pipe-pr107486.c: New test.
* gcc.dg/analyzer/pipe-void-return.c: New test.

Signed-off-by: David Malcolm <dmalcolm@redhat.com>
gcc/analyzer/analyzer.cc
gcc/analyzer/analyzer.h
gcc/analyzer/region-model.cc
gcc/testsuite/gcc.dg/analyzer/pipe-pr107486.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/analyzer/pipe-void-return.c [new file with mode: 0644]