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:
parent
1d57a22325
commit
39adc5eebd
1 changed files with 25 additions and 0 deletions
25
gcc/testsuite/gcc.dg/analyzer/realloc-pr110014.c
Normal file
25
gcc/testsuite/gcc.dg/analyzer/realloc-pr110014.c
Normal 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));
|
||||
}
|
Loading…
Add table
Reference in a new issue