1 /* stdc.h -- macros to make source compile on both ANSI C and K&R C
4 /* Copyright (C) 1993 Free Software Foundation, Inc.
6 This file is part of GNU Bash, the Bourne Again SHell.
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)
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.
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. */
22 #if !defined (_RL_STDC_H_)
25 /* Adapted from BSD /usr/include/sys/cdefs.h. */
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)); */
31 #if defined (__STDC__)
34 # define __P(protos) protos
36 # define __STRING(x) #x
38 # if !defined (__GNUC__)
45 # define __P(protos) ()
47 # define __STRING(x) "x"
49 #if defined (__GNUC__) /* gcc with -traditional */
51 # define const __const
53 # if !defined (inline)
54 # define inline __inline
56 # if !defined (signed)
57 # define signed __signed
59 # if !defined (volatile)
60 # define volatile __volatile
66 # if !defined (inline)
69 # if !defined (signed)
72 # if !defined (volatile)
75 #endif /* !__GNUC__ */
77 #endif /* !__STDC__ */
79 #endif /* !_RL_STDC_H_ */