blob: 66b72a72daff0a33961c7c517cc9824ae8b4fd3f [file] [log] [blame]
/* { dg-additional-options "-fanalyzer-verbose-state-changes" } */
typedef struct FILE FILE;
FILE* fopen (const char*, const char*);
int fclose (FILE*);
void test_1 (const char *path)
{
FILE *f = fopen (path, "r"); /* { dg-message "meaning: \\{verb: 'acquire', noun: 'resource'\\}" } */
if (!f)
return;
fclose (f); /* { dg-message "meaning: \\{verb: 'release', noun: 'resource'\\}" } */
fclose (f); /* { dg-warning "double 'fclose' of FILE 'f'" "warning" } */
}