In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/ef4ead6db594965224805417f6959ee430d5c928?hp=59dba841c4c022b197056ed7c78ea7d9e7fbb467>

- Log -----------------------------------------------------------------
commit ef4ead6db594965224805417f6959ee430d5c928
Author: Brian Fraser <[email protected]>
Date:   Thu Jul 24 15:54:30 2014 +0200

    Makefile.SH: Add missing files for make test on cross builds

M       Makefile.SH

commit 329865d81730328189992f6157dd4605d5c23f8e
Author: Brian Fraser <[email protected]>
Date:   Thu Jul 24 15:53:52 2014 +0200

    Makefile.SH: Fix cross builds with -Uhostgenerate

M       Makefile.SH

commit fcfe87f64acf23af5dc4a2ef58d6e0ca057b54bf
Author: Brian Fraser <[email protected]>
Date:   Thu Jul 24 15:53:17 2014 +0200

    t/re/subst.t: Proper skip for systems without locale

M       t/re/subst.t

commit 3fea7d2930995c8d4501ed04e8de7b899512e1f4
Author: Brian Fraser <[email protected]>
Date:   Thu Jul 24 15:51:35 2014 +0200

    pp.c: Fixed a quotemeta bug on perls built without locale.
    
    This was causing quotemeta("\N{U+D7}") to not be quoted, as well as
    some other codepoints in the latin1 range.

M       pp.c
-----------------------------------------------------------------------

Summary of changes:
 Makefile.SH  | 6 +++++-
 pp.c         | 9 ++++++---
 t/re/subst.t | 4 +++-
 3 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/Makefile.SH b/Makefile.SH
index ff0b513..85fd312 100755
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -660,7 +660,7 @@ generate_uudmap$(OBJ_EXT): mg_raw.h
 # it on the target system if we're cross-compiling.
 # If it is defined, then we just run it locally.
 case "$hostgenerate" in
-'')
+''|'undef')
 $spitshell >>$Makefile <<!GROK!THIS!
 bitcount.h: generate_uudmap\$(HOST_EXE_EXT)
        $run ./generate_uudmap\$(HOST_EXE_EXT) \$(generated_headers)
@@ -1411,6 +1411,7 @@ test_prep test-prep: test_prep_pre \$(MINIPERL_EXE) 
\$(unidatafiles) \$(PERL_EXE
        $to cpan/*/t
        $to dist/*/t
        $to ext/*/t
+       $to cpan/Archive-Tar/*
        $to cpan/Term-Cap/test.pl
        $to cpan/Pod-Usage/*
        $to cpan/Pod-Parser/*
@@ -1432,6 +1433,9 @@ test_prep test-prep: test_prep_pre \$(MINIPERL_EXE) 
\$(unidatafiles) \$(PERL_EXE
        $to perl.h
        $to cflags
        $to *.h
+# --- For t/porting/customized.t
+       $to vutil.c
+       $to vxs.inc
 # --- For t/TEST
        $to config.sh
 # --- For lib/diagnostics.t with -Duseshrplib
diff --git a/pp.c b/pp.c
index bc7c0df..5218f7b 100644
--- a/pp.c
+++ b/pp.c
@@ -4128,15 +4128,18 @@ PP(pp_quotemeta)
                    }
                }
                else if (UTF8_IS_DOWNGRADEABLE_START(*s)) {
+                   if (
 #ifdef USE_LOCALE_CTYPE
                    /* In locale, we quote all non-ASCII Latin1 chars.
                     * Otherwise use the quoting rules */
-                   if (IN_LC_RUNTIME(LC_CTYPE)
-                       || _isQUOTEMETA(TWO_BYTE_UTF8_TO_NATIVE(*s, *(s + 1))))
+                   
+                   IN_LC_RUNTIME(LC_CTYPE)
+                       ||
+#endif
+                       _isQUOTEMETA(TWO_BYTE_UTF8_TO_NATIVE(*s, *(s + 1))))
                    {
                        to_quote = TRUE;
                    }
-#endif
                }
                else if (is_QUOTEMETA_high(s)) {
                    to_quote = TRUE;
diff --git a/t/re/subst.t b/t/re/subst.t
index 85fe5d6..b85ff3b 100644
--- a/t/re/subst.t
+++ b/t/re/subst.t
@@ -1036,7 +1036,9 @@ SKIP: {
 
 SKIP: {
     eval { require POSIX; POSIX->import("locale_h"); };
-    if ($@) { skip "Can't test locale (maybe you are missing POSIX)", 6; }
+    if ($@ || !eval { &POSIX::LC_ALL; 1 }) {
+        skip "Can't test locale (maybe you are missing POSIX)", 6;
+    }
 
     setlocale(&POSIX::LC_ALL, "C");
     use locale;

--
Perl5 Master Repository

Reply via email to