Detrail enum comma.
[p5sagit/p5-mst-13.2.git] / dump.c
diff --git a/dump.c b/dump.c
index b494dbe..8b73a9a 100644 (file)
--- a/dump.c
+++ b/dump.c
 #include "perl.h"
 
 #ifndef PERL_OBJECT
-#ifdef I_STDARG
 static void dump(char *pat, ...);
-#else
-static void dump();
-#endif
 #endif /* PERL_OBJECT */
 
 void
@@ -29,10 +25,10 @@ dump_all(void)
 #ifdef DEBUGGING
     dTHR;
     PerlIO_setlinebuf(Perl_debug_log);
-    if (main_root)
-       dump_op(main_root);
-    dump_packsubs(defstash);
-#endif /* DEBUGGING */
+    if (PL_main_root)
+       dump_op(PL_main_root);
+    dump_packsubs(PL_defstash);
+#endif /* DEBUGGING */
 }
 
 void
@@ -49,16 +45,18 @@ dump_packsubs(HV *stash)
        for (entry = HvARRAY(stash)[i]; entry; entry = HeNEXT(entry)) {
            GV *gv = (GV*)HeVAL(entry);
            HV *hv;
+           if (SvTYPE(gv) != SVt_PVGV || !GvGP(gv))
+               continue;
            if (GvCVu(gv))
                dump_sub(gv);
            if (GvFORM(gv))
                dump_form(gv);
            if (HeKEY(entry)[HeKLEN(entry)-1] == ':' &&
-             (hv = GvHV(gv)) && HvNAME(hv) && hv != defstash)
+             (hv = GvHV(gv)) && HvNAME(hv) && hv != PL_defstash)
                dump_packsubs(hv);              /* nested package */
        }
     }
-#endif /* DEBUGGING */
+#endif /* DEBUGGING */
 }
 
 void
@@ -77,7 +75,7 @@ dump_sub(GV *gv)
        dump_op(CvROOT(GvCV(gv)));
     else
        dump("<undef>\n");
-#endif /* DEBUGGING */
+#endif /* DEBUGGING */
 }
 
 void
@@ -92,15 +90,15 @@ dump_form(GV *gv)
        dump_op(CvROOT(GvFORM(gv)));
     else
        dump("<undef>\n");
-#endif /* DEBUGGING */
+#endif /* DEBUGGING */
 }
 
 void
 dump_eval(void)
 {
 #ifdef DEBUGGING
-    dump_op(eval_root);
-#endif /* DEBUGGING */
+    dump_op(PL_eval_root);
+#endif /* DEBUGGING */
 }
 
 void
@@ -112,7 +110,7 @@ dump_op(OP *o)
        PerlIO_printf(Perl_debug_log, "%-4d", o->op_seq);
     else
        PerlIO_printf(Perl_debug_log, "    ");
-    dump("TYPE = %s  ===> ", op_name[o->op_type]);
+    dump("TYPE = %s  ===> ", PL_op_name[o->op_type]);
     if (o->op_next) {
        if (o->op_seq)
            PerlIO_printf(Perl_debug_log, "%d\n", o->op_next->op_seq);
@@ -121,10 +119,10 @@ dump_op(OP *o)
     }
     else
        PerlIO_printf(Perl_debug_log, "DONE\n");
-    dumplvl++;
+    PL_dumplvl++;
     if (o->op_targ) {
        if (o->op_type == OP_NULL)
-           dump("  (was %s)\n", op_name[o->op_targ]);
+           dump("  (was %s)\n", PL_op_name[o->op_targ]);
        else
            dump("TARG = %d\n", o->op_targ);
     }
@@ -245,7 +243,7 @@ dump_op(OP *o)
            ENTER;
            SAVEFREESV(tmpsv);
            gv_fullname3(tmpsv, cGVOPo->op_gv, Nullch);
-           dump("GV = %s\n", SvPV(tmpsv, na));
+           dump("GV = %s\n", SvPV(tmpsv, PL_na));
            LEAVE;
        }
        else
@@ -302,6 +300,7 @@ dump_op(OP *o)
        break;
     case OP_PUSHRE:
     case OP_MATCH:
+    case OP_QR:
     case OP_SUBST:
        dump_pm(cPMOPo);
        break;
@@ -313,9 +312,9 @@ dump_op(OP *o)
        for (kid = cUNOPo->op_first; kid; kid = kid->op_sibling)
            dump_op(kid);
     }
-    dumplvl--;
+    PL_dumplvl--;
     dump("}\n");
-#endif /* DEBUGGING */
+#endif /* DEBUGGING */
 }
 
 void
@@ -329,7 +328,7 @@ dump_gv(GV *gv)
        return;
     }
     sv = sv_newmortal();
-    dumplvl++;
+    PL_dumplvl++;
     PerlIO_printf(Perl_debug_log, "{\n");
     gv_fullname3(sv, gv, Nullch);
     dump("GV_NAME = %s", SvPVX(sv));
@@ -338,9 +337,9 @@ dump_gv(GV *gv)
        dump("-> %s", SvPVX(sv));
     }
     dump("\n");
-    dumplvl--;
+    PL_dumplvl--;
     dump("}\n");
-#endif /* DEBUGGING */
+#endif /* DEBUGGING */
 }
 
 void
@@ -354,7 +353,7 @@ dump_pm(PMOP *pm)
        return;
     }
     dump("{\n");
-    dumplvl++;
+    PL_dumplvl++;
     if (pm->op_pmflags & PMf_ONCE)
        ch = '?';
     else
@@ -373,6 +372,8 @@ dump_pm(PMOP *pm)
        SV *tmpsv = newSVpv("", 0);
        if (pm->op_pmdynflags & PMdf_USED)
            sv_catpv(tmpsv, ",USED");
+       if (pm->op_pmdynflags & PMdf_TAINTED)
+           sv_catpv(tmpsv, ",TAINTED");
        if (pm->op_pmflags & PMf_ONCE)
            sv_catpv(tmpsv, ",ONCE");
        if (pm->op_pmregexp && pm->op_pmregexp->check_substr
@@ -391,61 +392,31 @@ dump_pm(PMOP *pm)
            sv_catpv(tmpsv, ",GLOBAL");
        if (pm->op_pmflags & PMf_CONTINUE)
            sv_catpv(tmpsv, ",CONTINUE");
-       if (pm->op_pmflags & PMf_TAINTMEM)
-           sv_catpv(tmpsv, ",TAINTMEM");
+       if (pm->op_pmflags & PMf_RETAINT)
+           sv_catpv(tmpsv, ",RETAINT");
        if (pm->op_pmflags & PMf_EVAL)
            sv_catpv(tmpsv, ",EVAL");
        dump("PMFLAGS = (%s)\n", SvCUR(tmpsv) ? SvPVX(tmpsv) + 1 : "");
        SvREFCNT_dec(tmpsv);
     }
 
-    dumplvl--;
+    PL_dumplvl--;
     dump("}\n");
-#endif /* DEBUGGING */
-}
-
-
-#if !defined(I_STDARG) && !defined(I_VARARGS)
-/* VARARGS1 */
-static void dump(arg1,arg2,arg3,arg4,arg5)
-char *arg1;
-long arg2, arg3, arg4, arg5;
-{
-#ifdef DEBUGGING
-    I32 i;
-
-    for (i = dumplvl*4; i; i--)
-       (void)PerlIO_putc(Perl_debug_log,' ');
-    PerlIO_printf(Perl_debug_log, arg1, arg2, arg3, arg4, arg5);
-#endif /* DEBUGGING */
+#endif /* DEBUGGING */
 }
 
-#else
 
-#ifdef I_STDARG
 STATIC void
 dump(char *pat,...)
-#else
-/*VARARGS0*/
-static void
-dump(pat,va_alist)
-    char *pat;
-    va_dcl
-#endif
 {
 #ifdef DEBUGGING
     I32 i;
     va_list args;
 
-#ifdef I_STDARG
     va_start(args, pat);
-#else
-    va_start(args);
-#endif
-    for (i = dumplvl*4; i; i--)
+    for (i = PL_dumplvl*4; i; i--)
        (void)PerlIO_putc(Perl_debug_log,' ');
     PerlIO_vprintf(Perl_debug_log,pat,args);
     va_end(args);
-#endif /* DEBUGGING */
+#endif /* DEBUGGING */
 }
-#endif