aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimplify.cc
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2023-03-01 08:54:43 -0500
committerDavid Malcolm <dmalcolm@redhat.com>2023-03-01 08:54:43 -0500
commit070523b9d4c6cfa69060255893006efaf39bf617 (patch)
tree519d59ab9ec81597143a2a6fdc764f3854bc17a2 /gcc/gimplify.cc
parentf769d22ab685671095525d09ef29eeeed0ae3cee (diff)
downloadgcc-070523b9d4c6cfa69060255893006efaf39bf617.zip
gcc-070523b9d4c6cfa69060255893006efaf39bf617.tar.gz
gcc-070523b9d4c6cfa69060255893006efaf39bf617.tar.bz2
analyzer: fix infinite recursion false +ves [PR108935]
gcc/analyzer/ChangeLog: PR analyzer/108935 * infinite-recursion.cc (contains_unknown_p): New. (sufficiently_different_region_binding_p): New function, splitting out inner loop from... (sufficiently_different_p): ...here. Extend detection of unknown svalues to also include svalues that contain unknown. Treat changes in frames below the entry to the recursion as being sufficiently different to reject being an infinite recursion. gcc/testsuite/ChangeLog: PR analyzer/108935 * gcc.dg/analyzer/infinite-recursion-pr108935-1.c: New test. * gcc.dg/analyzer/infinite-recursion-pr108935-1a.c: New test. * gcc.dg/analyzer/infinite-recursion-pr108935-2.c: New test. Signed-off-by: David Malcolm <dmalcolm@redhat.com>
Diffstat (limited to 'gcc/gimplify.cc')
0 files changed, 0 insertions, 0 deletions