This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Change newSVpvn("…", …) to newSVpvs("…")
authorDagfinn Ilmari Mannsåker <ilmari@ilmari.org>
Fri, 4 Oct 2013 15:48:40 +0000 (16:48 +0100)
committerTony Cook <tony@develop-help.com>
Thu, 12 Jun 2014 04:27:20 +0000 (14:27 +1000)
The dual-life dists affected use Devel::PPPort, so can safely use
newSVpvs() even though it wasn't added until Perl v5.8.9.

23 files changed:
dist/Data-Dumper/Dumper.xs
dist/Storable/Storable.xs
ext/DynaLoader/dl_aix.xs
ext/DynaLoader/dl_dllload.xs
ext/DynaLoader/dl_dlopen.xs
ext/DynaLoader/dl_dyld.xs
ext/DynaLoader/dl_freemint.xs
ext/DynaLoader/dl_hpux.xs
ext/DynaLoader/dl_symbian.xs
ext/DynaLoader/dl_vms.xs
ext/DynaLoader/dl_win32.xs
ext/DynaLoader/dlutils.c
ext/POSIX/POSIX.xs
ext/PerlIO-encoding/encoding.xs
ext/PerlIO-scalar/scalar.xs
ext/Win32CORE/Win32CORE.c
ext/XS-APItest/APItest.xs
os2/OS2/OS2-Process/Process.xs
os2/os2.c
regcomp.c
regexec.c
win32/win32.c
win32/wince.c

index 2aeb11a..049121f 100644 (file)
@@ -379,7 +379,7 @@ static SV *
 sv_x(pTHX_ SV *sv, const char *str, STRLEN len, I32 n)
 {
     if (!sv)
-       sv = newSVpvn("", 0);
+       sv = newSVpvs("");
 #ifdef DEBUGGING
     else
        assert(SvTYPE(sv) >= SVt_PV);
@@ -539,11 +539,11 @@ DD_dump(pTHX_ SV *val, const char *name, STRLEN namelen, SV *retval, HV *seenhv,
            else {   /* store our name and continue */
                SV *namesv;
                if (name[0] == '@' || name[0] == '%') {
-                   namesv = newSVpvn("\\", 1);
+                   namesv = newSVpvs("\\");
                    sv_catpvn(namesv, name, namelen);
                }
                else if (realtype == SVt_PVCV && name[0] == '*') {
-                   namesv = newSVpvn("\\", 2);
+                   namesv = newSVpvs("\\");
                    sv_catpvn(namesv, name, namelen);
                    (SvPVX(namesv))[1] = '&';
                }
@@ -668,7 +668,7 @@ DD_dump(pTHX_ SV *val, const char *name, STRLEN namelen, SV *retval, HV *seenhv,
                realtype <= SVt_PVMG
 #endif
        ) {                          /* scalar ref */
-           SV * const namesv = newSVpvn("${", 2);
+           SV * const namesv = newSVpvs("${");
            sv_catpvn(namesv, name, namelen);
            sv_catpvn(namesv, "}", 1);
            if (realpack) {                                  /* blessed */
@@ -689,7 +689,7 @@ DD_dump(pTHX_ SV *val, const char *name, STRLEN namelen, SV *retval, HV *seenhv,
            SvREFCNT_dec(namesv);
        }
        else if (realtype == SVt_PVGV) {                     /* glob ref */
-           SV * const namesv = newSVpvn("*{", 2);
+           SV * const namesv = newSVpvs("*{");
            sv_catpvn(namesv, name, namelen);
            sv_catpvn(namesv, "}", 1);
            sv_catpvn(retval, "\\", 1);
@@ -828,7 +828,7 @@ DD_dump(pTHX_ SV *val, const char *name, STRLEN namelen, SV *retval, HV *seenhv,
            if (sortkeys) {
                if (sortkeys == &PL_sv_yes) {
 #if PERL_VERSION < 8
-                    sortkeys = sv_2mortal(newSVpvn("Data::Dumper::_sortkeys", 23));
+                    sortkeys = sv_2mortal(newSVpvs("Data::Dumper::_sortkeys"));
 #else
                    keys = newAV();
                    (void)hv_iterinit((HV*)ival);
@@ -1079,7 +1079,7 @@ DD_dump(pTHX_ SV *val, const char *name, STRLEN namelen, SV *retval, HV *seenhv,
              * Note that we'd have to check for weak-refs, too, but this is
              * already the branch for non-refs only. */
            else if (val != &PL_sv_undef && (!use_sparse_seen_hash || SvREFCNT(val) > 1)) {
-               SV * const namesv = newSVpvn("\\", 1);
+               SV * const namesv = newSVpvs("\\");
                sv_catpvn(namesv, name, namelen);
                seenentry = newAV();
                av_push(seenentry, namesv);
@@ -1160,8 +1160,8 @@ DD_dump(pTHX_ SV *val, const char *name, STRLEN namelen, SV *retval, HV *seenhv,
                static const char* const entries[] = { "{SCALAR}", "{ARRAY}", "{HASH}" };
                static const STRLEN sizes[] = { 8, 7, 6 };
                SV *e;
-               SV * const nname = newSVpvn("", 0);
-               SV * const newapad = newSVpvn("", 0);
+               SV * const nname = newSVpvs("");
+               SV * const newapad = newSVpvs("");
                GV * const gv = (GV*)val;
                I32 j;
                
@@ -1260,7 +1260,7 @@ MODULE = Data::Dumper             PACKAGE = Data::Dumper         PREFIX = Data_Dumper_
 #
 # This is the exact equivalent of Dump.  Well, almost. The things that are
 # different as of now (due to Laziness):
-#   * doesn't deparse yet.
+#   * doesn't deparse yet.'
 #
 
 void
@@ -1319,7 +1319,7 @@ Data_Dumper_Dumpxs(href, ...)
            terse = purity = deepcopy = useqq = 0;
            quotekeys = 1;
        
-           retval = newSVpvn("", 0);
+           retval = newSVpvs("");
            if (SvROK(href)
                && (hv = (HV*)SvRV((SV*)href))
                && SvTYPE(hv) == SVt_PVHV)              {
@@ -1383,7 +1383,7 @@ Data_Dumper_Dumpxs(href, ...)
                    imax = av_len(todumpav);
                else
                    imax = -1;
-               valstr = newSVpvn("",0);
+               valstr = newSVpvs("");
                for (i = 0; i <= imax; ++i) {
                    SV *newapad;
                
@@ -1482,7 +1482,7 @@ Data_Dumper_Dumpxs(href, ...)
                    if (gimme == G_ARRAY) {
                        XPUSHs(sv_2mortal(retval));
                        if (i < imax)   /* not the last time thro ? */
-                           retval = newSVpvn("",0);
+                           retval = newSVpvs("");
                    }
                }
                SvREFCNT_dec(postav);
index 9c13e33..b59c580 100644 (file)
@@ -2697,7 +2697,7 @@ static int store_code(pTHX_ stcxt_t *cxt, CV *cv)
         * blessed code references.
         */
        /* Ownership of both SVs is passed to load_module, which frees them. */
-       load_module(PERL_LOADMOD_NOIMPORT, newSVpvn("B::Deparse",10), newSVnv(0.61));
+       load_module(PERL_LOADMOD_NOIMPORT, newSVpvs("B::Deparse"), newSVnv(0.61));
         SPAGAIN;
 
        ENTER;
@@ -5630,7 +5630,7 @@ static SV *retrieve_code(pTHX_ stcxt_t *cxt, const char *cname)
         * prepend "sub " to the source
         */
 
-       sub = newSVpvn("sub ", 4);
+       sub = newSVpvs("sub ");
        if (SvUTF8(text))
                SvUTF8_on(sub);
        sv_catpv(sub, SvPV_nolen(text)); /* XXX no sv_catsv! */
index 9c98972..548e4ed 100644 (file)
@@ -780,7 +780,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our 
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
 
 #endif
 
index ea0a8f6..ff0c7a9 100644 (file)
@@ -205,7 +205,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our 
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
 
 #endif
 
index cb513ab..3a009ae 100644 (file)
@@ -279,7 +279,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our 
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
 
 #endif
 
index caa9467..2ed10bb 100644 (file)
@@ -234,7 +234,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our 
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
 
 #endif
 
index 6970a76..f154dcb 100644 (file)
@@ -211,7 +211,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
     dl_resolve_using   = get_av("DynaLoader::dl_resolve_using", GV_ADDMULTI);
     dl_require_symbols = get_av("DynaLoader::dl_require_symbols", GV_ADDMULTI);
 
index 4acc8c1..e089190 100644 (file)
@@ -191,7 +191,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our 
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
     dl_resolve_using = get_av("DynaLoader::dl_resolve_using", GV_ADDMULTI);
 
 #endif
index 7f0c0d3..b509a6a 100644 (file)
@@ -234,7 +234,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our 
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
 
 #endif
 
index 6eb2c54..23cf11b 100644 (file)
@@ -368,7 +368,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our 
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
     dl_require_symbols = get_av("DynaLoader::dl_require_symbols", GV_ADDMULTI);
 
 #endif
index f5d56cf..ac59e11 100644 (file)
@@ -48,7 +48,7 @@ OS_Error_String(pTHX)
     DWORD err = GetLastError();
     STRLEN len;
     if (!dl_error_sv)
-       dl_error_sv = newSVpvn("",0);
+       dl_error_sv = newSVpvs("");
     PerlProc_GetOSError(dl_error_sv,err);
     return SvPV(dl_error_sv,len);
 }
@@ -207,7 +207,7 @@ CLONE(...)
      * using Perl variables that belong to another thread, we create our 
      * own for this thread.
      */
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
 
 #endif
 
index 574ccad..29d9b91 100644 (file)
@@ -92,7 +92,7 @@ dl_generic_private_init(pTHX) /* called by dl_*.xs dl_private_init() */
     char *perl_dl_nonlazy;
     MY_CXT_INIT;
 
-    MY_CXT.x_dl_last_error = newSVpvn("", 0);
+    MY_CXT.x_dl_last_error = newSVpvs("");
     dl_nonlazy = 0;
 #ifdef DL_LOADONCEONLY
     dl_loaded_files = NULL;
index 0ca1373..8f2ff10 100644 (file)
@@ -1475,7 +1475,7 @@ tmpnam()
        STRLEN i;
        int len;
     CODE:
-       RETVAL = newSVpvn("", 0);
+       RETVAL = newSVpvs("");
        SvGROW(RETVAL, L_tmpnam);
        /* Yes, we know tmpnam() is bad.  So bad that some compilers
         * and linkers warn against using it.  But it is here for
index fababd1..cc329d3 100644 (file)
@@ -650,7 +650,7 @@ BOOT:
        Perl_warner(aTHX_ packWARN(WARN_IO), ":encoding without 'use Encode'");
 #endif
        /* The SV is magically freed by load_module */
-       load_module(PERL_LOADMOD_NOIMPORT, newSVpvn("Encode", 6), Nullsv, Nullsv);
+       load_module(PERL_LOADMOD_NOIMPORT, newSVpvs("Encode"), Nullsv, Nullsv);
        assert(sp == PL_stack_sp);
     }
     PUSHMARK(sp);
index 8d217c9..ca5368e 100644 (file)
@@ -46,7 +46,7 @@ PerlIOScalar_pushed(pTHX_ PerlIO * f, const char *mode, SV * arg,
        }
     }
     else {
-       s->var = newSVpvn("", 0);
+       s->var = newSVpvs("");
     }
     SvUPGRADE(s->var, SVt_PV);
 
index 91759e8..64104d3 100644 (file)
@@ -33,7 +33,7 @@ XS(w32_CORE_all){
      * subs
      */
     const char *function  = (const char *) XSANY.any_ptr;
-    Perl_load_module(aTHX_ PERL_LOADMOD_NOIMPORT, newSVpvn("Win32",5), newSVnv(0.27));
+    Perl_load_module(aTHX_ PERL_LOADMOD_NOIMPORT, newSVpvs("Win32"), newSVnv(0.27));
     SetLastError(err);
     errno = saved_errno;
     /* mark and SP from caller are passed through unchanged */
index a692c51..b9b18f4 100644 (file)
@@ -2433,7 +2433,7 @@ my_caller(level)
         ST(4) = cop_hints_fetch_pvs(cx->blk_oldcop, "foo", 0);
         ST(5) = cop_hints_fetch_pvn(cx->blk_oldcop, "foo", 3, 0, 0);
         ST(6) = cop_hints_fetch_sv(cx->blk_oldcop, 
-                sv_2mortal(newSVpvn("foo", 3)), 0, 0);
+                sv_2mortal(newSVpvs("foo")), 0, 0);
 
         hv = cop_hints_2hv(cx->blk_oldcop, 0);
         ST(7) = hv ? sv_2mortal(newRV_noinc((SV *)hv)) : &PL_sv_undef;
index 05befa0..81eb8fb 100644 (file)
@@ -427,7 +427,7 @@ myQueryWindowText(HWND hwnd)
            return &PL_sv_undef;
        return &PL_sv_no;
     }
-    sv = newSVpvn("", 0);
+    sv = newSVpvs("");
     SvGROW(sv, l + 1);
     len = QueryWindowText(hwnd, l + 1, SvPV_force(sv, n_a));
     if (len != l) {
@@ -459,7 +459,7 @@ QueryWindowSWP(HWND hwnd)
 SV *
 myQueryClassName(HWND hwnd)
 {
-    SV *sv = newSVpvn("",0);
+    SV *sv = newSVpvs("");
     STRLEN l = 46, len = 0, n_a;
 
     while (l + 1 >= len) {
@@ -534,7 +534,7 @@ myWinQueryAtomName(ATOM atom, HATOMTBL hAtomTbl)
   ULONG len = QueryAtomLength(hAtomTbl, atom);
 
   if (len) {                   /* Probably always so... */
-    SV *sv = newSVpvn("",0);
+    SV *sv = newSVpvs("");
     STRLEN n_a;
 
     SvGROW(sv, len + 1);
@@ -755,7 +755,7 @@ swentries_list()
     int num, n = 0;
     STRLEN n_a;
     PSWBLOCK pswblk;
-    SV *sv = newSVpvn("",0);
+    SV *sv = newSVpvs("");
 
     if (!(_emx_env & 0x200)) 
             croak("swentries_list not implemented on DOS"); /* not OS/2. */
index 4ae39e7..8c5e941 100644 (file)
--- a/os2/os2.c
+++ b/os2/os2.c
@@ -3855,7 +3855,7 @@ XS(XS_OS2__headerInfo)
 
        if (size <= 0)
            Perl_croak(aTHX_ "OS2::_headerInfo(): unexpected size: %d", (int)size);
-       ST(0) = newSVpvn("",0);
+       ST(0) = newSVpvs("");
        SvGROW(ST(0), size + 1);
        sv_2mortal(ST(0));
 
@@ -3885,7 +3885,7 @@ XS(XS_OS2_libPath)
            Perl_croak(aTHX_ "OS2::_headerInfo(%ld,%ld,%ld,%ld) error: %s",
                       DQHI_QUERYLIBPATHSIZE, sizeof(size), 0, 0,
                       os2error(Perl_rc));
-       ST(0) = newSVpvn("",0);
+       ST(0) = newSVpvs("");
        SvGROW(ST(0), size + 1);
        sv_2mortal(ST(0));
 
index bc5d350..e7c6662 100644 (file)
--- a/regcomp.c
+++ b/regcomp.c
@@ -5720,7 +5720,7 @@ S_concat_pat(pTHX_ RExC_state_t * const pRExC_state,
     /* if we know we have at least two args, create an empty string,
      * then concatenate args to that. For no args, return an empty string */
     if (!pat && pat_count != 1) {
-        pat = newSVpvn("", 0);
+        pat = newSVpvs("");
         SAVEFREESV(pat);
         alloced = TRUE;
     }
@@ -14088,7 +14088,7 @@ parseit:
                         AV* this_array;
                         STRLEN cp_count = utf8_length(foldbuf,
                                                       foldbuf + foldlen);
-                        SV* multi_fold = sv_2mortal(newSVpvn("", 0));
+                        SV* multi_fold = sv_2mortal(newSVpvs(""));
 
                         Perl_sv_catpvf(aTHX_ multi_fold, "\\x{%"UVXf"}", value);
 
index 6386d41..7e36001 100644 (file)
--- a/regexec.c
+++ b/regexec.c
@@ -7650,7 +7650,7 @@ Perl__get_regclass_nonbitmap_data(pTHX_ const regexp *prog,
        
     /* If requested, return a printable version of what this swash matches */
     if (listsvp) {
-       SV* matches_string = newSVpvn("", 0);
+       SV* matches_string = newSVpvs("");
 
         /* The swash should be used, if possible, to get the data, as it
          * contains the resolved data.  But this function can be called at
index 9126eec..b601452 100644 (file)
@@ -279,7 +279,7 @@ get_regstr_from(HKEY hkey, const char *valuename, SV **svp)
        {
            dTHX;
            if (!*svp)
-               *svp = sv_2mortal(newSVpvn("",0));
+               *svp = sv_2mortal(newSVpvs(""));
            SvGROW(*svp, datalen);
            retval = RegQueryValueEx(handle, valuename, 0, NULL,
                                     (PBYTE)SvPVX(*svp), &datalen);
@@ -358,7 +358,7 @@ get_emd_part(SV **prev_pathp, STRLEN *const len, char *trailing_path, ...)
        /* directory exists */
        dTHX;
        if (!*prev_pathp)
-           *prev_pathp = sv_2mortal(newSVpvn("",0));
+           *prev_pathp = sv_2mortal(newSVpvs(""));
        else if (SvPVX(*prev_pathp))
            sv_catpvn(*prev_pathp, ";", 1);
        sv_catpv(*prev_pathp, mod_name);
@@ -1785,7 +1785,7 @@ win32_getenv(const char *name)
 
     needlen = GetEnvironmentVariableA(name,NULL,0);
     if (needlen != 0) {
-       curitem = sv_2mortal(newSVpvn("", 0));
+       curitem = sv_2mortal(newSVpvs(""));
         do {
             SvGROW(curitem, needlen+1);
             needlen = GetEnvironmentVariableA(name,SvPVX(curitem),
index 63147cc..bbe8d31 100644 (file)
@@ -146,7 +146,7 @@ get_regstr_from(HKEY hkey, const char *valuename, SV **svp)
        if (retval == ERROR_SUCCESS && type == REG_SZ) {
            dTHX;
            if (!*svp)
-               *svp = sv_2mortal(newSVpvn("",0));
+               *svp = sv_2mortal(newSVpvs(""));
            SvGROW(*svp, datalen);
            retval = XCERegQueryValueExA(handle, valuename, 0, NULL,
                                     (PBYTE)SvPVX(*svp), &datalen);
@@ -226,7 +226,7 @@ get_emd_part(SV **prev_pathp, STRLEN *const len, char *trailing_path, ...)
        /* directory exists */
        dTHX;
        if (!*prev_pathp)
-           *prev_pathp = sv_2mortal(newSVpvn("",0));
+           *prev_pathp = sv_2mortal(newSVpvs(""));
        sv_catpvn(*prev_pathp, ";", 1);
        sv_catpv(*prev_pathp, mod_name);
        if(len)