-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathalloc.c
More file actions
41 lines (31 loc) · 735 Bytes
/
alloc.c
File metadata and controls
41 lines (31 loc) · 735 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/* alloc.c - version 1.0.2 */
#include <stdlib.h>
#include "hack.h"
#ifdef LINT
/*
a ridiculous definition, suppressing
"possible pointer alignment problem" for (long *) malloc()
"enlarg defined but never used"
"ftell defined (in <stdio.h>) but never used"
from lint
*/
#include <stdio.h>
long *alloc(unsigned n) {
long dummy = ftell(stderr);
if(n) dummy = 0; /* make sure arg is used */
return(&dummy);
}
#else
long *alloc(unsigned lth) {
char *ptr;
if(!(ptr = malloc(lth)))
panic("Cannot get %d bytes", lth);
return((long *) ptr);
}
long *enlarge(char *ptr, unsigned lth) {
char *nptr;
if(!(nptr = realloc(ptr,lth)))
panic("Cannot reallocate %d bytes", lth);
return((long *) nptr);
}
#endif /* LINT */