23 /* access macros are not declared in non posix mode in unistd.h -
24 don't try to use posix on NeXTstep 3.3 ! */
28 #if defined(__LCLINT__)
29 /*@-declundef -incondefs -redecl@*/ /* LCL: missing annotation */
30 /*@only@*/ void * alloca (size_t __size
)
31 /*@ensures MaxSet(result) == (__size - 1) @*/
33 /*@=declundef =incondefs =redecl@*/
36 /* AIX requires this to be the first thing in the file. */
45 # ifndef alloca /* predefined by HP cc +Olibcalls */
52 # define alloca(sz) malloc(sz) /* Kludge this for now */
56 #elif defined(__GNUC__) && defined(__STRICT_ANSI__)
57 #define alloca __builtin_alloca
61 /*@mayexit@*/ /*@only@*/ char * xstrdup (const char *str
)
65 #if HAVE_MCHECK_H && defined(__GNUC__)
66 #define vmefail() (fprintf(stderr, "virtual memory exhausted.\n"), exit(EXIT_FAILURE), NULL)
67 #define xstrdup(_str) (strcpy((malloc(strlen(_str)+1) ? : vmefail()), (_str)))
69 #define xstrdup(_str) strdup(_str)
70 #endif /* HAVE_MCHECK_H && defined(__GNUC__) */