aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/analyzer/use-after-free.c
blob: d7e4bc2c6cac627fc58f53e70713876e2f669f92 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdlib.h>
#include "analyzer-decls.h"

struct link { struct link *next; };

int free_a_list_badly (struct link *n)
{
  while (n) {
    free(n); /* { dg-message "freed here" } */
    n = n->next; /* { dg-warning "use after 'free' of 'n'" } */
  }
}