source: branches/samba-3.5.x/lib/popt/system.h@ 1075

Last change on this file since 1075 was 414, checked in by Herwig Bauernfeind, 15 years ago

Samba 3.5.0: Initial import

File size: 1.6 KB
Line 
1#ifdef HAVE_CONFIG_H
2#include "config.h"
3#endif
4
5#if defined (__GLIBC__) && defined(__LCLINT__)
6/*@-declundef@*/
7/*@unchecked@*/
8extern __const __int32_t *__ctype_tolower;
9/*@unchecked@*/
10extern __const __int32_t *__ctype_toupper;
11/*@=declundef@*/
12#endif
13
14#include <ctype.h>
15
16#include <errno.h>
17#include <fcntl.h>
18#include <limits.h>
19
20#if HAVE_MCHECK_H
21#include <mcheck.h>
22#endif
23
24#include <stdio.h>
25#include <stdlib.h>
26#include <string.h>
27
28#if HAVE_UNISTD_H
29#include <unistd.h>
30#endif
31
32#ifdef __NeXT
33/* access macros are not declared in non posix mode in unistd.h -
34 don't try to use posix on NeXTstep 3.3 ! */
35#include <libc.h>
36#endif
37
38#if defined(__LCLINT__)
39/*@-declundef -incondefs -redecl@*/ /* LCL: missing annotation */
40/*@only@*/ void * alloca (size_t __size)
41 /*@ensures MaxSet(result) == (__size - 1) @*/
42 /*@*/;
43/*@=declundef =incondefs =redecl@*/
44#endif
45
46/* AIX requires this to be the first thing in the file. */
47#ifndef __GNUC__
48# if HAVE_ALLOCA_H
49# include <alloca.h>
50# else
51# ifdef _AIX
52#pragma alloca
53# else
54# ifndef alloca /* predefined by HP cc +Olibcalls */
55char *alloca ();
56# endif
57# endif
58# endif
59#elif defined(__GNUC__) && defined(__STRICT_ANSI__)
60#define alloca __builtin_alloca
61#endif
62
63/*@-redecl -redef@*/
64/*@mayexit@*/ /*@only@*/ char * xstrdup (const char *str)
65 /*@*/;
66/*@=redecl =redef@*/
67
68#if HAVE_MCHECK_H && defined(__GNUC__)
69#define vmefail() (fprintf(stderr, "virtual memory exhausted.\n"), exit(EXIT_FAILURE), NULL)
70#define xstrdup(_str) (strcpy((malloc(strlen(_str)+1) ? : vmefail()), (_str)))
71#else
72#define xstrdup(_str) strdup(_str)
73#endif /* HAVE_MCHECK_H && defined(__GNUC__) */
74
75
76#include "popt.h"
Note: See TracBrowser for help on using the repository browser.