summaryrefslogtreecommitdiff
path: root/libmudflap/testsuite/libmudflap.c/fail39-frag.c
blob: 4e74ea5cd5eb3762251d419e7f2cfb4fc8cea100 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <stdlib.h>

int main ()
{
  volatile int *k = (int *) malloc (sizeof (int));
  volatile int l;
  if (k == NULL) abort ();
  *k = 5;
  free ((void *) k);
  __mf_set_options ("-ignore-reads");
  l = *k; /* Should not trip, even though memory region just freed.  */
  __mf_set_options ("-no-ignore-reads");
  l = *k; /* Should trip now.  */
  return 0;
}
/* { dg-output "mudflap violation 1.*check/read.*" } */
/* { dg-output "Nearby object 1.*" } */
/* { dg-output "mudflap dead object.*malloc region.*" } */
/* { dg-do run { xfail *-*-* } } */