Change 30004 by [EMAIL PROTECTED] on 2007/01/26 11:57:08

        Integrate:
        [ 28468]
        Subject: [PATCH] Clean up mathoms.c
        From: [EMAIL PROTECTED] (Andy Lester)
        Date: Sun, 2 Jul 2006 12:24:45 -0500
        Message-ID: <[EMAIL PROTECTED]>
        
        [ 28469]
        Subject: [PATCH] mg.c cleanups
        From: [EMAIL PROTECTED] (Andy Lester)
        Date: Sun, 2 Jul 2006 12:33:36 -0500
        Message-ID: <[EMAIL PROTECTED]>
        
        [ 28477]
        Subject: [PATCH] consting and localizing in universal.c
        From: [EMAIL PROTECTED] (Andy Lester)
        Date: Mon, 3 Jul 2006 17:41:48 -0500
        Message-ID: <[EMAIL PROTECTED]>

Affected files ...

... //depot/maint-5.8/perl/embed.fnc#196 integrate
... //depot/maint-5.8/perl/mathoms.c#24 edit
... //depot/maint-5.8/perl/mg.c#137 integrate
... //depot/maint-5.8/perl/proto.h#186 integrate
... //depot/maint-5.8/perl/universal.c#60 integrate

Differences ...

==== //depot/maint-5.8/perl/embed.fnc#196 (text) ====
Index: perl/embed.fnc
--- perl/embed.fnc#195~29997~   2007-01-26 02:30:23.000000000 -0800
+++ perl/embed.fnc      2007-01-26 03:57:08.000000000 -0800
@@ -1394,7 +1394,7 @@
 #endif
 
 #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT)
-s      |bool|isa_lookup        |NULLOK HV *stash|NN const char *name|NULLOK HV 
*name_stash|int len|int level
+s      |bool|isa_lookup        |NULLOK HV *stash|NN const char *name|NULLOK 
const HV * const name_stash|int len|int level
 #endif
 
 #if defined(PERL_IN_LOCALE_C) || defined(PERL_DECL_PROT)

==== //depot/maint-5.8/perl/mathoms.c#24 (text) ====
Index: perl/mathoms.c
--- perl/mathoms.c#23~29966~    2007-01-25 02:15:27.000000000 -0800
+++ perl/mathoms.c      2007-01-26 03:57:08.000000000 -0800
@@ -29,6 +29,43 @@
 #define PERL_IN_MATHOMS_C
 #include "perl.h"
 
+OP * Perl_ref(pTHX_ OP *o, I32 type);
+void Perl_sv_unref(pTHX_ SV *sv);
+void Perl_sv_taint(pTHX_ SV *sv);
+IV Perl_sv_2iv(pTHX_ register SV *sv);
+UV Perl_sv_2uv(pTHX_ register SV *sv);
+char * Perl_sv_2pv(pTHX_ register SV *sv, STRLEN *lp);
+char * Perl_sv_2pv_nolen(pTHX_ register SV *sv);
+char * Perl_sv_2pvbyte_nolen(pTHX_ register SV *sv);
+char * Perl_sv_2pvutf8_nolen(pTHX_ register SV *sv);
+void Perl_sv_force_normal(pTHX_ register SV *sv);
+void Perl_sv_setsv(pTHX_ SV *dstr, register SV *sstr);
+void Perl_sv_catpvn(pTHX_ SV *dsv, const char* sstr, STRLEN slen);
+void Perl_sv_catpvn_mg(pTHX_ register SV *sv, register const char *ptr, 
register STRLEN len);
+void Perl_sv_catsv(pTHX_ SV *dstr, register SV *sstr);
+void Perl_sv_catsv_mg(pTHX_ SV *dsv, register SV *ssv);
+char * Perl_sv_pv(pTHX_ SV *sv);
+char * Perl_sv_pvn_force(pTHX_ SV *sv, STRLEN *lp);
+char * Perl_sv_pvbyte(pTHX_ SV *sv);
+char * Perl_sv_pvutf8(pTHX_ SV *sv);
+STRLEN Perl_sv_utf8_upgrade(pTHX_ register SV *sv);
+NV Perl_huge(void);
+void Perl_gv_fullname3(pTHX_ SV *sv, GV *gv, const char *prefix);
+void Perl_gv_efullname3(pTHX_ SV *sv, GV *gv, const char *prefix);
+GV * Perl_gv_fetchmethod(pTHX_ HV *stash, const char *name);
+HE * Perl_hv_iternext(pTHX_ HV *hv);
+void Perl_hv_magic(pTHX_ HV *hv, GV *gv, int how);
+bool Perl_do_open(pTHX_ GV *gv, register char *name, I32 len, int as_raw,
+               int rawmode, int rawperm, PerlIO *supplied_fp);
+bool Perl_do_aexec(pTHX_ SV *really, register SV **mark, register SV **sp);
+bool Perl_do_exec(pTHX_ char *cmd);
+U8 * Perl_uvuni_to_utf8(pTHX_ U8 *d, UV uv);
+bool Perl_is_utf8_string_loc(pTHX_ U8 *s, STRLEN len, U8 **ep);
+void Perl_sv_nolocking(pTHX_ SV *sv);
+void Perl_sv_usepvn_mg(pTHX_ SV *sv, char *ptr, STRLEN len);
+void Perl_sv_usepvn(pTHX_ SV *sv, char *ptr, STRLEN len);
+
+
 /* ref() is now a macro using Perl_doref;
  * this version provided for binary compatibility only.
  */
@@ -109,7 +146,7 @@
 char *
 Perl_sv_2pv_nolen(pTHX_ register SV *sv)
 {
-    return sv_2pv(sv, 0);
+    return sv_2pv(sv, NULL);
 }
 
 /*
@@ -126,7 +163,7 @@
 char *
 Perl_sv_2pvbyte_nolen(pTHX_ register SV *sv)
 {
-    return sv_2pvbyte(sv, 0);
+    return sv_2pvbyte(sv, NULL);
 }
 
 /*
@@ -143,7 +180,7 @@
 char *
 Perl_sv_2pvutf8_nolen(pTHX_ register SV *sv)
 {
-    return sv_2pvutf8(sv, 0);
+    return sv_2pvutf8(sv, NULL);
 }
 
 /*
@@ -321,7 +358,7 @@
     if (SvPOK(sv))
         return SvPVX(sv);
 
-    return sv_2pv(sv, 0);
+    return sv_2pv(sv, NULL);
 }
 
 /* sv_pvn_force() is now a macro using Perl_sv_pvn_force_flags();
@@ -341,7 +378,7 @@
 char *
 Perl_sv_pvbyte(pTHX_ SV *sv)
 {
-    sv_utf8_downgrade(sv,0);
+    sv_utf8_downgrade(sv, FALSE);
     return sv_pv(sv);
 }
 
@@ -362,7 +399,7 @@
 char *
 Perl_sv_pvbyten(pTHX_ SV *sv, STRLEN *lp)
 {
-    sv_utf8_downgrade(sv,0);
+    sv_utf8_downgrade(sv, FALSE);
     return sv_pvn(sv,lp);
 }
 

==== //depot/maint-5.8/perl/mg.c#137 (text) ====
Index: perl/mg.c
--- perl/mg.c#136~29999~        2007-01-26 03:02:10.000000000 -0800
+++ perl/mg.c   2007-01-26 03:57:08.000000000 -0800
@@ -276,7 +276,7 @@
 
     if (DO_UTF8(sv)) {
         const U8 *s = (U8*)SvPV_const(sv, len);
-        len = Perl_utf8_length(aTHX_ (U8*)s, (U8*)s + len);
+       len = utf8_length((U8*)s, (U8*)s + len);
     }
     else
         (void)SvPV_const(sv, len);
@@ -529,7 +529,7 @@
                    if (i > 0 && RX_MATCH_UTF8(rx)) {
                        const char * const b = rx->subbeg;
                        if (b)
-                           i = Perl_utf8_length(aTHX_ (U8*)b, (U8*)(b+i));
+                           i = utf8_length((U8*)b, (U8*)(b+i));
                    }
 
                    sv_setiv(sv, i);
@@ -815,10 +815,11 @@
             else if (PL_compiling.cop_warnings == pWARN_ALL) {
                /* Get the bit mask for $warnings::Bits{all}, because
                 * it could have been extended by warnings::register */
-               SV **bits_all;
                HV * const bits=get_hv("warnings::Bits", FALSE);
-               if (bits && (bits_all=hv_fetchs(bits, "all", FALSE))) {
-                   sv_setsv(sv, *bits_all);
+               if (bits) {
+                   SV ** const bits_all = hv_fetchs(bits, "all", FALSE);
+                   if (bits_all)
+                       sv_setsv(sv, *bits_all);
                }
                else {
                    sv_setpvn(sv, WARN_ALLstring, WARNsize) ;
@@ -1107,6 +1108,11 @@
                char tmpbuf[256];
                Stat_t st;
                I32 i;
+#ifdef VMS  /* Hmm.  How do we get $Config{path_sep} from C? */
+               const char path_sep = '|';
+#else
+               const char path_sep = ':';
+#endif
                s = delimcpy(tmpbuf, tmpbuf + sizeof tmpbuf,
                             (char *) s, (char *) strend, ':', &i);
                s++;
@@ -1184,7 +1190,7 @@
 restore_sigmask(pTHX_ SV *save_sv)
 {
     const sigset_t * const ossetp = (const sigset_t *) SvPV_nolen_const( 
save_sv );
-    (void)sigprocmask(SIG_SETMASK, ossetp, (sigset_t *)0);
+    (void)sigprocmask(SIG_SETMASK, ossetp, NULL);
 }
 #endif
 int
@@ -2543,8 +2549,7 @@
             }
             if (i)
                 (void)setgroups(i, gary);
-            if (gary)
-                Safefree(gary);
+           Safefree(gary);
        }
 #else  /* HAS_SETGROUPS */
        PL_egid = SvIV(sv);
@@ -2870,9 +2875,9 @@
            /* downgrade public flags to private,
               and discard any other private flags */
 
-           U32 public = SvFLAGS(sv) & (SVf_IOK|SVf_NOK|SVf_POK);
+           const U32 public = SvFLAGS(sv) & (SVf_IOK|SVf_NOK|SVf_POK);
            if (public) {
-               SvFLAGS(sv) &= ~( public | SVp_IOK|SVp_NOK|SVp_POK );
+               SvFLAGS(sv) &= ~( public | (SVp_IOK|SVp_NOK|SVp_POK) );
                SvFLAGS(sv) |= ( public << PRIVSHIFT );
            }
        }

==== //depot/maint-5.8/perl/proto.h#186 (text+w) ====
Index: perl/proto.h
--- perl/proto.h#185~29997~     2007-01-26 02:30:23.000000000 -0800
+++ perl/proto.h        2007-01-26 03:57:08.000000000 -0800
@@ -2015,7 +2015,7 @@
 #endif
 
 #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT)
-STATIC bool    S_isa_lookup(pTHX_ HV *stash, const char *name, HV *name_stash, 
int len, int level);
+STATIC bool    S_isa_lookup(pTHX_ HV *stash, const char *name, const HV * 
const name_stash, int len, int level);
 #endif
 
 #if defined(PERL_IN_LOCALE_C) || defined(PERL_DECL_PROT)

==== //depot/maint-5.8/perl/universal.c#60 (text) ====
Index: perl/universal.c
--- perl/universal.c#59~29984~  2007-01-25 14:41:11.000000000 -0800
+++ perl/universal.c    2007-01-26 03:57:08.000000000 -0800
@@ -32,7 +32,7 @@
  */
 
 STATIC bool
-S_isa_lookup(pTHX_ HV *stash, const char *name, HV* name_stash,
+S_isa_lookup(pTHX_ HV *stash, const char *name, const HV* const name_stash,
              int len, int level)
 {
     AV* av;
@@ -44,7 +44,7 @@
 
     /* A stash/class can go by many names (ie. User == main::User), so 
        we compare the stash itself just in case */
-    if (name_stash && (stash == name_stash))
+    if (name_stash && ((const HV *)stash == name_stash))
         return TRUE;
 
     hvname = HvNAME_get(stash);
@@ -65,11 +65,12 @@
        && (hv = GvHV(gv)))
     {
        if (SvIV(subgen) == (IV)PL_sub_generation) {
-           SV* sv;
            SV** const svp = (SV**)hv_fetch(hv, name, len, FALSE);
-           if (svp && (sv = *svp) != (SV*)&PL_sv_undef) {
-               DEBUG_o( Perl_deb(aTHX_ "Using cached ISA %s for package %s\n",
-                                 name, hvname) );
+           if (svp) {
+               SV * const sv = *svp;
+               if (sv != &PL_sv_undef)
+                   DEBUG_o( Perl_deb(aTHX_ "Using cached ISA %s for package 
%s\n",
+                                   name, hvname) );
                return (sv == &PL_sv_yes);
            }
        }
End of Patch.

Reply via email to