Bug path

‘test_5’: events 1-3
36char test_5 (FILE *logfile)
^~~~~~
|
(1) entry to ‘test_5’
37{
38 char *password = getpass (">");
~~~~~~~~~~~~~
|
(2) sensitive value acquired here
39 called_by_test_5 (password); /* { dg-message "passing sensitive value 'password' in call to 'called_by_test_5' from 'test_5'" } */
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
(3) passing sensitive value ‘password’ in call to ‘called_by_test_5’ from ‘test_5’
‘called_by_test_5’: events 4-5
31static void called_by_test_5 (const char *value)
^~~~~~~~~~~~~~~~
|
(4) entry to ‘called_by_test_5’
32{
33 printf ("%s", value); /* { dg-warning "sensitive value 'value' written to output file \\\[CWE-532\\\]" } */
~~~~~~~~~~~~~~~~~~~~
|
(5) sensitive value ‘value’ written to output file; acquired at (2)