Bug path

test_3
‘test_3’: events 1-2
34void test_3 (struct nested n_outer)
^~~~~~
|
(1) entry to ‘test_3’
35{
36 called_by_test_3 (n_outer);
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
(2) calling ‘called_by_test_3’ from ‘test_3’
called_by_test_3
‘called_by_test_3’: events 3-5
29static void called_by_test_3 (struct nested n_inner)
^~~~~~~~~~~~~~~~
|
(3) entry to ‘called_by_test_3’
30{
31 free (n_inner.f.ptr);
~~~~~~~~~~~~~~~~~~~~
|
(4) first ‘free’ here
32 free (n_inner.f.ptr); /* { dg-warning "double-'free' of 'n_outer.f.ptr'" } */
~~~~~~~~~~~~~~~~~~~~
|
(5) second ‘free’ here; first ‘free’ was at (4)