rlstdc.h revision 47558
1/* stdc.h -- macros to make source compile on both ANSI C and K&R C
2   compilers. */
3
4/* Copyright (C) 1993 Free Software Foundation, Inc.
5
6   This file is part of GNU Bash, the Bourne Again SHell.
7
8   Bash is free software; you can redistribute it and/or modify it
9   under the terms of the GNU General Public License as published by
10   the Free Software Foundation; either version 1, or (at your option)
11   any later version.
12
13   Bash is distributed in the hope that it will be useful, but WITHOUT
14   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15   or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
16   License for more details.
17
18   You should have received a copy of the GNU General Public License
19   along with Bash; see the file COPYING.  If not, write to the Free
20   Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
21
22#if !defined (_RL_STDC_H_)
23#define _RL_STDC_H_
24
25/* Adapted from BSD /usr/include/sys/cdefs.h. */
26
27/* A function can be defined using prototypes and compile on both ANSI C
28   and traditional C compilers with something like this:
29	extern char *func __P((char *, char *, int)); */
30
31#if defined (__STDC__)
32
33#  if !defined (__P)
34#    define __P(protos) protos
35#  endif
36#  define __STRING(x) #x
37
38#  if !defined (__GNUC__)
39#    define inline
40#  endif
41
42#else /* !__STDC__ */
43
44#  if !defined (__P)
45#    define __P(protos) ()
46#  endif
47#  define __STRING(x) "x"
48
49#if defined (__GNUC__)		/* gcc with -traditional */
50#  if !defined (const)
51#    define const  __const
52#  endif
53#  if !defined (inline)
54#    define inline __inline
55#  endif
56#  if !defined (signed)
57#    define signed __signed
58#  endif
59#  if !defined (volatile)
60#    define volatile __volatile
61#  endif
62#else /* !__GNUC__ */
63#  if !defined (const)
64#    define const
65#  endif
66#  if !defined (inline)
67#    define inline
68#  endif
69#  if !defined (signed)
70#    define signed
71#  endif
72#  if !defined (volatile)
73#    define volatile
74#  endif
75#endif /* !__GNUC__ */
76
77#endif /* !__STDC__ */
78
79#endif /* !_RL_STDC_H_ */
80