Sign in
llvm
/
llvm-archive
/
f8b4f79771a41ee0a0f02ac90619d37ccd834915
/
.
/
safecode
/
test
/
mem_safety
/
use_after_free
/
use_after_free-007.c
blob: 69d1bd9c3036aa946dbd92fdbfc3a4418a918ea7 [
file
] [
log
] [
blame
]
/* Allocate a pointer to a function. Call that
pointer after it has already been freed. */
#include
<stdlib.h>
int
f
()
{
return
6
;
}
int
main
()
{
int
(*(*
p
))();
p
=
malloc
(
sizeof
(
int
(*)()));
*
p
=
f
;
free
(
p
);
return
(*
p
)();
}