summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/analyzer/torture/leak-pr102308-1.c
blob: 31747168505fbc21cba2faff1a1e4f6bbb978188 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdlib.h>

struct s {
  char *p;
  int arr[2];
};

int main(void) {
  struct s *s = malloc(sizeof *s);
  if (s) {
    s->p = malloc(1);
    for (int i = 0; i < 2; i++)
      s->arr[i] = -1; /* { dg-bogus "leak" } */
  }
  if (s) {
    free(s->p);
    free(s);
  }
}