repo.or.cz
/
mcc.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
Used Variables instead of Options, in SConstruct
[mcc.git]
/
errors.c
blob
9afd68dcd10a614161051d8e7bd9001aed8513d6
1
#define _BSD_SOURCE
2
#include
"errors.h"
3
#include
"stdlib.h"
4
#include
"stdio.h"
5
#include
"string.h"
6
#include
"stdarg.h"
7
8
noreturn
void
_die
(
const char
*
func
,
const char
*
fmt
, ...)
9
{
10
va_list
ap
;
11
va_start
(
ap
,
fmt
);
12
fprintf
(
stderr
,
"[%s] "
,
func
);
13
vfprintf
(
stderr
,
fmt
,
ap
);
14
va_end
(
ap
);
15
fputc
(
'
\n
'
,
stderr
);
16
exit
(
1
);
17
}
18
19
void
*
emalloc
(
size_t
size
)
20
{
21
void
*
p
=
malloc
(
size
);
22
if
(!
p
){
23
die
(
"memory full"
);
24
}
25
return
p
;
26
}
27
28
char
*
estrdup
(
const char
*
str
)
29
{
30
char
*
p
;
31
p
=
strdup
(
str
);
32
if
(!
p
){
33
die
(
"memory full"
);
34
}
35
return
p
;
36
}
37