home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
lclint.zip
/
lclint-2_3h-os2-bin.zip
/
test
/
null4.c
< prev
next >
Wrap
C/C++ Source or Header
|
1997-09-03
|
653b
|
48 lines
# include "bool.h"
/*@only@*/ /*@null@*/ int *p;
extern /*@truenull@*/ bool isNull (/*@null@*/ int *p);
void f (void)
{
if (p != NULL) return;
else
{
p = malloc (24);
if (p == NULL) exit (EXIT_FAILURE);
*p = 3;
}
}
void f1 (void)
{
if (p != NULL) return;
p = malloc (24);
if (p == NULL) exit (EXIT_FAILURE);
*p = 3;
}
int f2 (void)
{
if (p == NULL) return 0;
return *p;
}
int f3 (void)
{
if (isNull(p)) return 0;
return *p;
}
void g (void)
{
if (p == NULL) return;
p = malloc (24); /* 1. Only storage p not released before assignment */
if (p == NULL) exit (EXIT_FAILURE);
*p = 3;
}