testsuite: Add more allocation size tests for conjured svalues [PR110014]

This patch adds the reproducers reported in PR 110014 as test cases. The
false positives in those cases are already fixed with PR 109577.

2023-06-09  Tim Lange  <mail@tim-lange.me>

	PR analyzer/110014

gcc/testsuite/ChangeLog:

	* gcc.dg/analyzer/realloc-pr110014.c: New tests.
This commit is contained in:
Tim Lange 2023-06-09 20:08:22 +02:00
parent 1d57a22325
commit 39adc5eebd

View file

@ -0,0 +1,25 @@
void *realloc (void *, unsigned long)
__attribute__((__nothrow__, __leaf__))
__attribute__((__warn_unused_result__)) __attribute__((__alloc_size__ (2)));
long *
slurp (long *buffer, unsigned long file_size)
{
unsigned long cc;
if (!__builtin_add_overflow (file_size - file_size % sizeof (long),
2 * sizeof (long), &cc))
buffer = realloc (buffer, cc);
return buffer;
}
long *
slurp1 (long *buffer, unsigned long file_size)
{
return realloc (buffer, file_size - file_size % sizeof (long));
}
long *
slurp2 (long *buffer, unsigned long file_size)
{
return realloc (buffer, (file_size / sizeof (long)) * sizeof (long));
}