Bug path

test_3
‘test_3’: events 1-4
27 if (flag) {
^
|
(1) following ‘true’ branch (when ‘flag != 0’)...
28 free((char *)inbuf.data); /* { dg-message "first 'free' here" } */
~~~~~~~~~~~~~~~~~~~~~~~~
| |
| (2) ...to here
(3) first ‘free’ here
29 }
30 free((char *)inbuf.data); /* { dg-warning "double-'free' of 'inbuf.data'" } */
~~~~~~~~~~~~~~~~~~~~~~~~
|
(4) second ‘free’ here; first ‘free’ was at (3)