Change 34494 by [EMAIL PROTECTED] on 2008/10/16 20:18:39

        Clarify which save types are in mathoms, which aren't used, and which
        still are in use.

Affected files ...

... //depot/perl/scope.c#226 edit

Differences ...

==== //depot/perl/scope.c#226 (text) ====
Index: perl/scope.c
--- perl/scope.c#225~33376~     2008-02-26 05:13:18.000000000 -0800
+++ perl/scope.c        2008-10-16 13:18:39.000000000 -0700
@@ -1037,16 +1037,29 @@
                SvFLAGS(sv) |= val;
            }
            break;
-           /* These are only saved in mathoms.c */
+
+           /* This would be a mathom, but Perl_save_svref() calls a static
+              function, S_save_scalar_at(), so has to stay in this file.  */
        case SAVEt_SVREF:                       /* scalar reference */
            value = (SV*)SSPOPPTR;
            ptr = SSPOPPTR;
            av = NULL; /* what to refcnt_dec */
            goto restore_sv;
+
+           /* These are only saved in mathoms.c */
+       case SAVEt_NSTAB:
+           gv = (GV*)SSPOPPTR;
+           (void)sv_clear((SV*)gv);
+           break;
        case SAVEt_LONG:                        /* long reference */
            ptr = SSPOPPTR;
            *(long*)ptr = (long)SSPOPLONG;
            break;
+       case SAVEt_IV:                          /* IV reference */
+           ptr = SSPOPPTR;
+           *(IV*)ptr = (IV)SSPOPIV;
+           break;
+
        case SAVEt_I16:                         /* I16 reference */
            ptr = SSPOPPTR;
            *(I16*)ptr = (I16)SSPOPINT;
@@ -1055,14 +1068,6 @@
            ptr = SSPOPPTR;
            *(I8*)ptr = (I8)SSPOPINT;
            break;
-       case SAVEt_IV:                          /* IV reference */
-           ptr = SSPOPPTR;
-           *(IV*)ptr = (IV)SSPOPIV;
-           break;
-       case SAVEt_NSTAB:
-           gv = (GV*)SSPOPPTR;
-           (void)sv_clear((SV*)gv);
-           break;
        case SAVEt_DESTRUCTOR:
            ptr = SSPOPPTR;
            (*SSPOPDPTR)(ptr);
End of Patch.

Reply via email to