[shell changes from patch from perl5.003_23 to perl5.003_24]
[p5sagit/p5-mst-13.2.git] / dump.c
diff --git a/dump.c b/dump.c
index 8366f5f..7aed230 100644 (file)
--- a/dump.c
+++ b/dump.c
@@ -50,7 +50,7 @@ HV* stash;
        for (entry = HvARRAY(stash)[i]; entry; entry = HeNEXT(entry)) {
            GV *gv = (GV*)HeVAL(entry);
            HV *hv;
-           if (GvCV(gv))
+           if (GvCVu(gv))
                dump_sub(gv);
            if (GvFORM(gv))
                dump_form(gv);
@@ -189,10 +189,17 @@ register OP *op;
                (void)strcat(buf,"AMPER,");
            if (op->op_private & OPpENTERSUB_DB)
                (void)strcat(buf,"DB,");
-           if (op->op_private & OPpDEREF_AV)
-               (void)strcat(buf,"AV,");
-           if (op->op_private & OPpDEREF_HV)
-               (void)strcat(buf,"HV,");
+           switch (op->op_private & OPpDEREF) {
+           case OPpDEREF_SV:
+               (void)strcat(buf, "SV,");
+               break;
+           case OPpDEREF_AV:
+               (void)strcat(buf, "AV,");
+               break;
+           case OPpDEREF_HV:
+               (void)strcat(buf, "HV,");
+               break;
+           }
            if (op->op_private & HINT_STRICT_REFS)
                (void)strcat(buf,"STRICT_REFS,");
        }
@@ -357,8 +364,6 @@ register PMOP *pm;
            (void)strcat(buf,"ALL,");
        if (pm->op_pmflags & PMf_SKIPWHITE)
            (void)strcat(buf,"SKIPWHITE,");
-       if (pm->op_pmflags & PMf_FOLD)
-           (void)strcat(buf,"FOLD,");
        if (pm->op_pmflags & PMf_CONST)
            (void)strcat(buf,"CONST,");
        if (pm->op_pmflags & PMf_KEEP)