Bug path
test
‘test’
:
events 1-2
9
void test (void *ptr)
^
|
(1) entry to ‘test’
10
{
11
calls_free (ptr); /* { dg-message "calling 'calls_free' from 'test'" } */
~
|
(2) calling ‘calls_free’ from ‘test’
calls_free
change of file to ‘../../src/gcc/testsuite/gcc.dg/analyzer/double-free-lto-1-b.c’
‘calls_free’
:
events 3-4
5
extern void calls_free (void *ptr)
^
|
(3) entry to ‘calls_free’
6
{
7
free (ptr);
~
|
(4) first ‘free’ here
change of file to ‘../../src/gcc/testsuite/gcc.dg/analyzer/double-free-lto-1-a.c’
‘test’
:
events 5-6
11
calls_free (ptr); /* { dg-message "calling 'calls_free' from 'test'" } */
^
|
(5) returning to ‘test’ from ‘calls_free’
12
free (ptr); /* { dg-warning "double-'free' of 'ptr_.+'" } */
~
|
(6) second ‘free’ here; first ‘free’ was at (4)