Asterisk - The Open Source Telephony Project  18.5.0
proto.h
Go to the documentation of this file.
1 /*
2  * Copyright 1992 by Jutta Degener and Carsten Bormann, Technische
3  * Universitaet Berlin. See the accompanying file "COPYRIGHT" for
4  * details. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE.
5  */
6 
7 /*$Header$*/
8 
9 #ifndef PROTO_H
10 #define PROTO_H
11 
12 #ifdef __cplusplus
13 # define NeedFunctionPrototypes 1
14 #endif
15 
16 #ifdef __STDC__
17 # define NeedFunctionPrototypes 1
18 #endif
19 
20 #ifdef _NO_PROTO
21 # undef NeedFunctionPrototypes
22 #endif
23 
24 #undef P /* gnu stdio.h actually defines this... */
25 #undef P0
26 #undef P1
27 #undef P2
28 #undef P3
29 #undef P4
30 #undef P5
31 #undef P6
32 #undef P7
33 #undef P8
34 
35 #if NeedFunctionPrototypes
36 
37 # define P( protos ) protos
38 
39 # define P0() (void)
40 # define P1(x, a) (a)
41 # define P2(x, a, b) (a, b)
42 # define P3(x, a, b, c) (a, b, c)
43 # define P4(x, a, b, c, d) (a, b, c, d)
44 # define P5(x, a, b, c, d, e) (a, b, c, d, e)
45 # define P6(x, a, b, c, d, e, f) (a, b, c, d, e, f)
46 # define P7(x, a, b, c, d, e, f, g) (a, b, c, d, e, f, g)
47 # define P8(x, a, b, c, d, e, f, g, h) (a, b, c, d, e, f, g, h)
48 
49 #else /* !NeedFunctionPrototypes */
50 
51 # define P( protos ) ( /* protos */ )
52 
53 # define P0() ()
54 # define P1(x, a) x a;
55 # define P2(x, a, b) x a; b;
56 # define P3(x, a, b, c) x a; b; c;
57 # define P4(x, a, b, c, d) x a; b; c; d;
58 # define P5(x, a, b, c, d, e) x a; b; c; d; e;
59 # define P6(x, a, b, c, d, e, f) x a; b; c; d; e; f;
60 # define P7(x, a, b, c, d, e, f, g) x a; b; c; d; e; f; g;
61 # define P8(x, a, b, c, d, e, f, g, h) x a; b; c; d; e; f; g; h;
62 
63 #endif /* !NeedFunctionPrototypes */
64 
65 #endif /* PROTO_H */