From: Karl Williamson Date: Sat, 31 Jul 2010 20:18:03 +0000 (-0600) Subject: op_reg_common.h: Move things around X-Git-Tag: v5.13.4~104 X-Git-Url: https://perl5.git.perl.org/perl5.git/commitdiff_plain/bb1c6009cb7b6b922ff045cd5494bf183ec5ddbc op_reg_common.h: Move things around Moving the definitions of the duplicate variables makes it easier to read. Unfortunately, the values can't be in terms of the previous ones because defsubs_h.PL doesn't pick them up. So I've made them numeric with a #if to make sure they don't drift off. --- diff --git a/op_reg_common.h b/op_reg_common.h index de100dc..b6a4f75 100644 --- a/op_reg_common.h +++ b/op_reg_common.h @@ -12,18 +12,25 @@ /* These defines are used in both op.h and regexp.h The definitions use the * shift form so that ext/B/defsubs_h.PL will pick them up */ #define RXf_PMf_MULTILINE (1 << 0) /* /m */ -#define PMf_MULTILINE (1 << 0) /* /m */ #define RXf_PMf_SINGLELINE (1 << 1) /* /s */ -#define PMf_SINGLELINE (1 << 1) /* /s */ #define RXf_PMf_FOLD (1 << 2) /* /i */ -#define PMf_FOLD (1 << 2) /* /i */ #define RXf_PMf_EXTENDED (1 << 3) /* /x */ -#define PMf_EXTENDED (1 << 3) /* /x */ #define RXf_PMf_KEEPCOPY (1 << 4) /* /p */ -#define PMf_KEEPCOPY (1 << 4) /* /p */ #define RXf_PMf_LOCALE (1 << 5) -#define PMf_LOCALE (1 << 5) /* Next available bit after the above. Name begins with '_' so won't be * exported by B */ #define _RXf_PMf_SHIFT_NEXT 6 + + +/* These copies need to be numerical or defsubs_h.PL won't know about them. */ +#define PMf_MULTILINE 1<<0 +#define PMf_SINGLELINE 1<<1 +#define PMf_FOLD 1<<2 +#define PMf_EXTENDED 1<<3 +#define PMf_KEEPCOPY 1<<4 +#define PMf_LOCALE 1<<5 + +#if PMf_MULTILINE != RXf_PMf_MULTILINE || PMf_SINGLELINE != RXf_PMf_SINGLELINE || PMf_FOLD != RXf_PMf_FOLD || PMf_EXTENDED != RXf_PMf_EXTENDED || PMf_KEEPCOPY != RXf_PMf_KEEPCOPY || PMf_LOCALE != RXf_PMf_LOCALE +# error RXf_PMf defines are wrong +#endif