This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
'use locale' no longer ever fails.to compile
authorKarl Williamson <khw@cpan.org>
Fri, 16 May 2014 03:18:14 +0000 (21:18 -0600)
committerKarl Williamson <khw@cpan.org>
Thu, 5 Jun 2014 17:23:00 +0000 (11:23 -0600)
Thus we can skip the machinations we used to do to make sure things
compiled.

ext/Pod-Html/lib/Pod/Html.pm
ext/XS-APItest/t/handy.t
ext/re/t/reflags.t
t/op/quotemeta.t
t/op/taint.t
t/re/fold_grind.t
t/re/pat.t
t/run/locale.t
t/uni/fold.t
t/uni/overload.t

index f9f05b3..34729a9 100644 (file)
@@ -3,7 +3,7 @@ use strict;
 require Exporter;
 
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
-$VERSION = 1.21;
+$VERSION = 1.22;
 @ISA = qw(Exporter);
 @EXPORT = qw(pod2html htmlify);
 @EXPORT_OK = qw(anchorify);
@@ -16,11 +16,7 @@ use File::Spec;
 use File::Spec::Unix;
 use Getopt::Long;
 use Pod::Simple::Search;
-BEGIN {
-    if($Config{d_setlocale}) {
-        require locale; import locale; # make \w work right in non-ASCII lands
-    }
-}
+use locale; # make \w work right in non-ASCII lands
 
 =head1 NAME
 
index d68f9d9..a434e2d 100644 (file)
@@ -22,11 +22,7 @@ if($Config{d_setlocale}) {
     require POSIX;
     $locale = POSIX::setlocale( &POSIX::LC_ALL, "C");
     if (defined $locale && $locale eq 'C') {
-        BEGIN {
-            if($Config{d_setlocale}) {
-                require locale; import locale; # make \w work right in non-ASCII lands
-            }
-        }
+        use locale; # make \w work right in non-ASCII lands
 
         # Some locale implementations don't have the 128-255 characters all
         # mean nothing.  Skip the locale tests in that situation
@@ -154,8 +150,7 @@ foreach my $name (sort keys %properties) {
             }
 
             if (defined $locale) {
-                require locale; import locale;
-
+                use locale;
                 POSIX::setlocale( &POSIX::LC_ALL, "C");
                 $ret = truth eval "test_is${function}_LC($i)";
                 if ($@) {
@@ -193,8 +188,7 @@ foreach my $name (sort keys %properties) {
         }
 
         if (defined $locale && $name ne 'vertws') {
-            require locale; import locale;
-
+            use locale;
             POSIX::setlocale( &POSIX::LC_ALL, "C");
             $ret = truth eval "test_is${function}_LC_uvchr('$i')";
             if ($@) {
@@ -232,8 +226,7 @@ foreach my $name (sort keys %properties) {
         }
 
         if ($name ne 'vertws' && defined $locale) {
-            require locale; import locale;
-
+            use locale;
             POSIX::setlocale( &POSIX::LC_ALL, "C");
             $ret = truth eval "test_is${function}_LC_utf8('$char')";
             if ($@) {
@@ -348,9 +341,8 @@ foreach my $name (sort keys %to_properties) {
 
         if ($name ne 'TITLE') { # Test _LC;  titlecase is not defined in locales.
             if (defined $locale) {
-                require locale; import locale;
-
-                    POSIX::setlocale( &POSIX::LC_ALL, "C");
+                use locale;
+                POSIX::setlocale( &POSIX::LC_ALL, "C");
                 $ret = eval "test_to${function}_LC($j)";
                 if ($@) {
                     fail($@);
index 482b2c8..b2cbf80 100644 (file)
@@ -60,11 +60,7 @@ SKIP: {
   ) {
     skip "no locale support", 7
   }
-  BEGIN {
-      if($Config::Config{d_setlocale}) {
-          require locale; import locale;
-      }
-  }
+  use locale;
   use re '/u';
   is qr//, '(?^u:)', 'use re "/u" with active locale';
   no re '/u';
index 1b8613a..9e62076 100644 (file)
@@ -78,7 +78,7 @@ is(length(quotemeta($char)), 1, "quotemeta '\\N{U+D8}'  in UTF-8 length");
 
   SKIP: {
     skip 'No locale testing without d_setlocale', 8 if(!$Config{d_setlocale});
-    require locale; import locale;
+    use locale;
 
     my $char = ":";
     is(quotemeta($char), "\\$char", "quotemeta '$char' locale");
@@ -107,11 +107,7 @@ is(length(quotemeta($char)), 1, "quotemeta '\\N{U+D8}'  in UTF-8 length");
 
   SKIP: {
     skip 'No locale testing without d_setlocale', 12 if(!$Config{d_setlocale});
-    BEGIN {
-        if($Config{d_setlocale}) {
-            require locale; import locale;
-        }
-    }
+    use locale;
 
     my $char = ":";
     utf8::upgrade($char);
index aaf556a..149a83c 100644 (file)
@@ -303,11 +303,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ /(\w+)/; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -320,11 +316,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ /(\w)/g; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -364,11 +356,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             ($res) = $s =~ /(\w+)/; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -381,11 +369,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             ($res, $res2) = $s =~ /(\w)/g; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -524,11 +508,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ s/(\w+)/xyz/; $one = $1;
         }
         is_tainted($s,     "$desc: s tainted");
@@ -542,11 +522,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ s/(\w)/x/g; $one = $1;
         }
         is_tainted($s,     "$desc: s tainted");
@@ -560,11 +536,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ s/(\w+)/xyz/r; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -720,11 +692,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ /(\w+)/; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -737,11 +705,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ /(\w)/g; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -781,11 +745,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             ($res) = $s =~ /(\w+)/; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -798,11 +758,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             ($res, $res2) = $s =~ /(\w)/g; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -942,11 +898,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ s/(\w+)/xyz/; $one = $1;
         }
         is_tainted($s,     "$desc: s tainted");
@@ -960,11 +912,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ s/(\w)/x/g; $one = $1;
         }
         is_tainted($s,     "$desc: s tainted");
@@ -978,11 +926,7 @@ my $TEST = 'TEST';
 
         $s = 'abcd';
         {
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $res = $s =~ s/(\w+)/xyz/r; $one = $1;
         }
         isnt_tainted($s,   "$desc: s not tainted");
@@ -2343,11 +2287,7 @@ SKIP: {
     skip 'No locale testing without d_setlocale', 4 if(!$Config{d_setlocale});
 
     use feature 'fc';
-    BEGIN {
-        if($Config{d_setlocale}) {
-            require locale; import locale;
-        }
-    }
+    use locale;
     my ($latin1, $utf8) = ("\xDF") x 2;
     utf8::downgrade($latin1);
     utf8::upgrade($utf8);
index 65f4243..8308042 100644 (file)
@@ -423,7 +423,7 @@ my @charsets = qw(d u a aa);
 if($Config{d_setlocale}) {
     my $current_locale = POSIX::setlocale( &POSIX::LC_CTYPE, "C") // "";
     if ($current_locale eq 'C') {
-        require locale; import locale;
+        use locale;
 
         # Some implementations don't have the 128-255 range characters all
         # mean nothing under the C locale (an example being VMS).  This is
index 71cfeaa..e3d15d1 100644 (file)
@@ -522,11 +522,7 @@ sub run_tests {
       SKIP: {
             skip 'No locale testing without d_setlocale', 1 if(!$Config{d_setlocale});
 
-            BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             $locale = qr/\b\v$/;
             is($locale,    '(?^l:\b\v$)', 'Verify has l modifier when compiled under use locale');
             no locale;
@@ -555,11 +551,7 @@ sub run_tests {
       SKIP: {
             skip 'No locale testing without d_setlocale', 2 if(!$Config{d_setlocale});
 
-             BEGIN {
-                if($Config{d_setlocale}) {
-                    require locale; import locale;
-                }
-            }
+             use locale;
             is(qr/abc$dual/,    '(?^l:abc(?^:\b\v$))', 'Verify retains d meaning when interpolated under locale');
             is(qr/abc$unicode/,    '(?^l:abc(?^u:\b\v$))', 'Verify retains u when interpolated under locale');
         }
index f4581c9..e662e3c 100644 (file)
@@ -58,11 +58,7 @@ my $original_locale = setlocale(LC_NUMERIC);
 my ($base, $different, $comma, $difference, $utf8_radix);
 my $radix_encoded_as_utf8;
 for ("C", @locales) { # prefer C for the base if available
-    BEGIN {
-        if($Config{d_setlocale}) {
-            require locale; import locale;
-        }
-    }
+    use locale;
     setlocale(LC_NUMERIC, $_) or next;
     my $in = 4.2; # avoid any constant folding bugs
     if ((my $s = sprintf("%g", $in)) eq "4.2")  {
@@ -154,7 +150,7 @@ format STDOUT =
 @.#
 4.179
 .
-{ require locale; import locale; write; }
+{ use locale; write; }
 EOF
            "too late to look at the locale at write() time");
         }
@@ -176,11 +172,7 @@ EOF
         # do not let "use 5.000" affect the locale!
         # this test is to prevent regression of [rt.perl.org #105784]
         fresh_perl_is(<<"EOF",
-            BEGIN {
-                if("$Config{d_setlocale}") {
-                    require locale; import locale;
-                }
-            }
+            use locale;
             use POSIX;
             my \$i = 0.123;
             POSIX::setlocale(POSIX::LC_NUMERIC(),"$different");
index 032f382..f016d30 100644 (file)
@@ -437,12 +437,8 @@ SKIP: {
         utf8::upgrade($utf8);
         is(fc($latin1), fc($utf8), "fc() gives the same results for \\x{$_} in Latin-1 and UTF-8 under unicode_strings");
         SKIP: {
-              skip 'No locale testing without d_setlocale', 2 if(!$Config{d_setlocale});
-              BEGIN {
-                  if($Config{d_setlocale}) {
-                      require locale; import locale;
-                  }
-              }
+            skip 'No locale testing without d_setlocale', 2 if(!$Config{d_setlocale});
+            use locale;
             is(fc($latin1), lc($latin1), "use locale; fc(qq{\\x{$_}}), lc(qq{\\x{$_}}) when qq{\\x{$_}} is in latin-1");
             is(fc($utf8), lc($utf8), "use locale; fc(qq{\\x{$_}}), lc(qq{\\x{$_}}) when qq{\\x{$_}} is in latin-1");
         }
index bd87b66..0fd8de6 100644 (file)
@@ -110,11 +110,7 @@ SKIP: {
     } elsif ($^O eq 'dec_osf' || $^O eq 'VMS') {
        skip "$^O has broken en_GB.ISO8859-1 locale", 24;
     } else {
-        BEGIN {
-            if($Config{d_setlocale}) {
-                require locale; import locale;
-            }
-        }
+        use locale;
        my $u = UTF8Toggle->new("\311");
        my $lc = lc $u;
        is (length $lc, 1);