t/run/locale.t: Skip some Solaris locales
authorKarl Williamson <khw@cpan.org>
Thu, 19 Apr 2018 20:43:43 +0000 (14:43 -0600)
committerDavid Mitchell <davem@iabyn.com>
Tue, 1 May 2018 08:09:33 +0000 (09:09 +0100)
Solaris is buggy in dealing with locales that have a multi-byte UTF-8
decimal radix character.  Skip using these, like we do on cygwin, which
has a similar problem.

t/run/locale.t

index 13bc25d..282fbb5 100644 (file)
@@ -88,6 +88,13 @@ if ($non_C_locale) {
         @test_numeric_locales = grep { $_ !~ m/ps_AF/i } @test_numeric_locales;
     }
 
+    # Similarly the arabic locales on solaris don't work right on the
+    # multi-byte radix character, generating malformed UTF-8.
+    if ($^O eq 'solaris') {
+        @test_numeric_locales = grep { $_ !~ m/ ^ ( ar_ | pa_ ) /x }
+                                                        @test_numeric_locales;
+    }
+
     fresh_perl_is("for (qw(@test_numeric_locales)) {\n" . <<'EOF',
         use POSIX qw(locale_h);
         use locale;