declare getpass in analyzer/sensitive-1.c test

The getpass function is not available on all systems; and not
necessarily declared in unistd.h, as expected by the sensitive-1
analyzer test.

Since this is a compile-only test, it doesn't really matter if the
function is defined in the system libraries.  All we need is a
declaration, to avoid warnings from calling an undeclared function.
This patch adds the declaration, in a way that is most unlikely to
conflict with any existing declaration.


for  gcc/testsuite/ChangeLog

	* gcc.dg/analyzer/sensitive-1.c: Declare getpass.
This commit is contained in:
Alexandre Oliva 2021-01-14 16:12:19 -03:00 committed by Alexandre Oliva
parent 505caa7295
commit 088e46b8d4

View File

@ -6,6 +6,11 @@
#include <string.h>
/* Declare getpass, in case unistd doesn't declare it.
Parenthesize it, in case it's a macro.
Don't use a prototype, to avoid const mismatches. */
extern char *(getpass) ();
char test_1 (FILE *logfile)
{
char *password = getpass (">"); /* { dg-message "\\(1\\) sensitive value acquired here" } */