diff options
author | Nicholas Clark <nick@ccl4.org> | 2011-08-07 21:09:03 +0200 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2011-08-11 11:38:46 +0200 |
commit | 115ff745268490ae5fb5ecaee00be54172e302e0 (patch) | |
tree | 18788de5ba03a4598d0cdd3b776e2dd257df050f /perl.h | |
parent | e469e61f2b416389b7fb67acaf0d21735066e6ee (diff) | |
download | perl-115ff745268490ae5fb5ecaee00be54172e302e0.tar.gz |
Simplify embedvar.h, removing a level of macro indirection for PL_* variables.
For the default (non-multiplicity) configuration, PERLVAR*() macros now
directly expand their arguments to tokens such as C<PL_defgv>, instead of
expanding to C<PL_Idefgv>. This removes over 350 lines from F<embedvar.h>,
which defined macros to map from C<PL_Idefgv> to C<PL_defgv> and so forth.
Diffstat (limited to 'perl.h')
-rw-r--r-- | perl.h | 16 |
1 files changed, 8 insertions, 8 deletions
@@ -4935,10 +4935,10 @@ struct interpreter { */ /* Set up PERLVAR macros for populating structs */ -# define PERLVAR(var,type) type var; -# define PERLVARA(var,n,type) type var[n]; -# define PERLVARI(var,type,init) type var; -# define PERLVARIC(var,type,init) type var; +# define PERLVAR(prefix,var,type) type prefix##var; +# define PERLVARA(prefix,var,n,type) type prefix##var[n]; +# define PERLVARI(prefix,var,type,init) type prefix##var; +# define PERLVARIC(prefix,var,type,init) type prefix##var; struct interpreter { # include "intrpvar.h" @@ -5037,10 +5037,10 @@ struct tempsym; /* defined in pp_pack.c */ * these include variables that would have been their struct-s */ -#define PERLVAR(var,type) EXT type PL_##var; -#define PERLVARA(var,n,type) EXT type PL_##var[n]; -#define PERLVARI(var,type,init) EXT type PL_##var INIT(init); -#define PERLVARIC(var,type,init) EXTCONST type PL_##var INIT(init); +#define PERLVAR(prefix,var,type) EXT type PL_##var; +#define PERLVARA(prefix,var,n,type) EXT type PL_##var[n]; +#define PERLVARI(prefix,var,type,init) EXT type PL_##var INIT(init); +#define PERLVARIC(prefix,var,type,init) EXTCONST type PL_##var INIT(init); #if !defined(MULTIPLICITY) START_EXTERN_C |