summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorTony Cook <tony@develop-help.com>2023-05-15 07:40:54 +0200
committerTony Cook <tony@develop-help.com>2023-05-17 09:36:32 +1000
commit59b4d2932ceb16662879bca2a22315c3597276ae (patch)
tree21dd25a7b89de6a7c3ff45cf73198a00c2c73fb8 /lib
parentbcc6b9bf9f29ea8ffcbff4265c4dcefc3c84c8ca (diff)
downloadperl-59b4d2932ceb16662879bca2a22315c3597276ae.tar.gz
AIX: skip some locale tests
These tests fail on the EN_US.UTF-8 locale. Some fail due to a bug fixed in later AIX (lib/locale.t, t/run/locale.t) and the other due to an apparent bug in the locale itself. https://perl5.test-smoke.org/report/5034327
Diffstat (limited to 'lib')
-rw-r--r--lib/locale.t22
1 files changed, 14 insertions, 8 deletions
diff --git a/lib/locale.t b/lib/locale.t
index 66dcf05793..a0f1c3e3e7 100644
--- a/lib/locale.t
+++ b/lib/locale.t
@@ -789,18 +789,24 @@ my $final_without_setlocale = $test_num;
debug "Scanning for locales...\n";
require POSIX; import POSIX ':locale_h';
-
my $categories = [ 'LC_CTYPE', 'LC_NUMERIC', 'LC_ALL' ];
-debug "Scanning for just compatible";
-my @Locale = find_locales($categories);
-debug "Scanning for even incompatible";
-my @include_incompatible_locales = find_locales($categories,
- 'even incompatible locales');
-
+my @Locale;
+my @include_incompatible_locales;
+if ($^O eq "aix"
+ and version->new(($Config{osvers} =~ /^(\d+(\.\d+))/)[0]) < 7) {
+ # https://www.ibm.com/support/pages/apar/IV22097
+ skip("setlocale broken on old AIX");
+}
+else {
+ debug "Scanning for just compatible";
+ @Locale = find_locales($categories);
+ debug "Scanning for even incompatible";
+ @include_incompatible_locales = find_locales($categories,
+ 'even incompatible locales');
+}
# The locales included in the incompatible list that aren't in the compatible
# one.
my @incompatible_locales;
-
if (@Locale < @include_incompatible_locales) {
my %seen;
@seen{@Locale} = ();