Change 30461 was wrong. As ext/re (re)builds the regexp engine with
Nicholas Clark [Mon, 5 Mar 2007 12:26:46 +0000 (12:26 +0000)]
-DDEBUGGING, it's going to need PL_reg_name even if core perl doesn't.
So something is always going to use it, so always define it, and always
export it. (But only define it once, so that static builds work.)

p4raw-id: //depot/perl@30464

makedef.pl
regcomp.pl
regnodes.h

index a5d81a0..ea06236 100644 (file)
@@ -593,7 +593,6 @@ unless ($define{'DEBUGGING'}) {
                    Perl_sv_peek
                    Perl_hv_assert
                    PL_block_type
-                   PL_reg_name
                    PL_watchaddr
                    PL_watchok
                    PL_watch_pvx
index 89bbbe0..38c346c 100644 (file)
@@ -161,10 +161,9 @@ print OUT <<EOP;
 
 /* reg_name[] - Opcode/state names in string form, for debugging */
 
-#ifdef DEBUGGING
-#  ifndef DOINIT
+#ifndef DOINIT
 EXTCONST char * PL_reg_name[];
-#  else
+#else
 EXTCONST char * PL_reg_name[] = {
 EOP
 
@@ -186,8 +185,7 @@ while (++$ind <= $tot) {
 
 print OUT <<EOP;
 };
-#  endif /* DOINIT */
-#endif /* DEBUGGING */
+#endif /* DOINIT */
 
 /* ex: set ro: */
 EOP
index 2f21dd9..6f6e0b2 100644 (file)
@@ -456,10 +456,9 @@ static const char reg_off_by_arg[] = {
 
 /* reg_name[] - Opcode/state names in string form, for debugging */
 
-#ifdef DEBUGGING
-#  ifndef DOINIT
+#ifndef DOINIT
 EXTCONST char * PL_reg_name[];
-#  else
+#else
 EXTCONST char * PL_reg_name[] = {
        "END",                          /* 0000 */
        "SUCCEED",                      /* 0x01 */
@@ -588,7 +587,6 @@ EXTCONST char * PL_reg_name[] = {
        "KEEPS_next",                   /* REGNODE_MAX +0x27 */
        "KEEPS_next_fail",              /* REGNODE_MAX +0x28 */
 };
-#  endif /* DOINIT */
-#endif /* DEBUGGING */
+#endif /* DOINIT */
 
 /* ex: set ro: */