diff options
author | David Malcolm <dmalcolm@redhat.com> | 2021-11-30 14:47:24 -0500 |
---|---|---|
committer | David Malcolm <dmalcolm@redhat.com> | 2021-11-30 17:49:05 -0500 |
commit | 9603bccba62e250d0ff64863a1730a167d571a25 (patch) | |
tree | f2772d6c9a76e5a273666d1112ea05976c80cfb9 /gcc | |
parent | 03ea0ca1189a39e095188b0425c66446cc84a0a5 (diff) | |
download | gcc-9603bccba62e250d0ff64863a1730a167d571a25.zip gcc-9603bccba62e250d0ff64863a1730a167d571a25.tar.gz gcc-9603bccba62e250d0ff64863a1730a167d571a25.tar.bz2 |
analyzer: add regression test [PR99269]
gcc/testsuite/ChangeLog:
PR analyzer/99269
* gcc.dg/analyzer/pr99269.c: New test.
Signed-off-by: David Malcolm <dmalcolm@redhat.com>
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/gcc.dg/analyzer/pr99269.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/analyzer/pr99269.c b/gcc/testsuite/gcc.dg/analyzer/pr99269.c new file mode 100644 index 0000000..1cce3ae --- /dev/null +++ b/gcc/testsuite/gcc.dg/analyzer/pr99269.c @@ -0,0 +1,16 @@ +#include <stdlib.h> + +void example(void) { + int len; + int **namelist = NULL; + + len = 2; + namelist = malloc(len * sizeof *namelist); + if (!namelist) return; + namelist[0] = malloc(sizeof **namelist); + namelist[1] = malloc(sizeof **namelist); + + while(len--) { free(namelist[len]); } + free(namelist); + return; +} |