This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[win32] integrate mainline
[perl5.git] / INTERN.h
1 /*    INTERN.h
2  *
3  *    Copyright (c) 1991-1997, Larry Wall
4  *
5  *    You may distribute under the terms of either the GNU General Public
6  *    License or the Artistic License, as specified in the README file.
7  *
8  */
9
10 /*
11  * EXT  designates a global var which is defined in perl.h
12  * dEXT designates a global var which is defined in another
13  *      file, so we can't count on finding it in perl.h
14  *      (this practice should be avoided).
15  */
16 #undef EXT
17 #undef dEXT
18 #undef EXTCONST
19 #undef dEXTCONST
20 #if defined(VMS) && !defined(__GNUC__)
21 #  define EXT globaldef {"$GLOBAL_RW_VARS"} noshare
22 #  define dEXT globaldef {"$GLOBAL_RW_VARS"} noshare
23 #  define EXTCONST globaldef {"$GLOBAL_RO_VARS"} readonly
24 #  define dEXTCONST globaldef {"$GLOBAL_RO_VARS"} readonly
25 #else
26 #  ifdef __cplusplus
27 #   define EXT
28 #   define dEXT
29 #   define EXTCONST extern const
30 #   define dEXTCONST const
31 #else
32 #  define EXT
33 #  define dEXT
34 #  define EXTCONST const
35 #  define dEXTCONST const
36 #endif
37 #endif
38
39 #undef INIT
40 #define INIT(x) = x
41
42 #define DOINIT