Hi, this bug is actually not ppc64el specific, I could also reproduce it on barriere.d.o (amd64).
That said, it seems to be an encoding issue. In i18n tests, some test fail because of strings not being lexicographically equal, specifically due to the nonbreaking space. The tests convert values to strings which insert a "locale-thousands-separator" which, in this case, is a non-breaking space. This string is compared to the hardcoded expected result which contains a standard space (UTF8 hex. 20) As the file is UTF8, this patch replace the bad space with the UTF8 non-breaking space equivalent hex. C2 A0 . Thanks for reviewing the attached patch. F.
Description: Fix unicode non-breaking spaces In i18n tests, some test fail because of non-breaking spaces not being matched. The tests convert values to strings in fr_FR.iso88591 which insert a "locale-thousands-separator" which, in this case, is a non-breaking space. This string is compared to the hardcoded expected result which contains a standard space (UTF8 hex. 20) As the file is UTF8, this patch replace the bad space with the UTF8 non-breaking space equivalent hex. C2 A0 . Author: Frédéric Bonnard <fre...@debian.org> --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ Index: guile-2.0-2.0.13+1/test-suite/tests/i18n.test =================================================================== --- guile-2.0-2.0.13+1.orig/test-suite/tests/i18n.test 2016-10-22 22:09:34.000000000 +0200 +++ guile-2.0-2.0.13+1/test-suite/tests/i18n.test 2019-03-19 13:36:43.022766801 +0100 @@ -514,19 +514,19 @@ (under-french-locale-or-unresolved (lambda () (let ((fr (make-locale LC_ALL %french-locale-name))) - (string=? "123 456" (number->locale-string 123456 #t fr)))))) + (string=? "123 456" (number->locale-string 123456 #t fr)))))) (pass-if "fraction" (under-french-locale-or-unresolved (lambda () (let ((fr (make-locale LC_ALL %french-locale-name))) - (string=? "1 234,567" (number->locale-string 1234.567 #t fr)))))) + (string=? "1 234,567" (number->locale-string 1234.567 #t fr)))))) (pass-if "fraction, 1 digit" (under-french-locale-or-unresolved (lambda () (let ((fr (make-locale LC_ALL %french-locale-name))) - (string=? "1 234,5" + (string=? "1 234,5" (number->locale-string 1234.567 1 fr)))))))) (with-test-prefix "format ~h" @@ -542,7 +542,7 @@ (lambda () (if (null? (locale-digit-grouping %french-locale)) (throw 'unresolved) - (string=? "12 345,6789" + (string=? "12 345,6789" (format #f "~:h" 12345.6789 %french-locale))))))) (with-test-prefix "English" @@ -564,12 +564,12 @@ (under-french-locale-or-unresolved (lambda () (let ((fr (make-locale LC_ALL %french-locale-name))) - (string=? "123 456 +EUR" + (string=? "123 456 +EUR" (monetary-amount->locale-string 123456 #f fr)))))) (pass-if "fraction" (under-french-locale-or-unresolved (lambda () (let ((fr (make-locale LC_ALL %french-locale-name))) - (string=? "1 234,56 EUR " + (string=? "1 234,56 EUR " (monetary-amount->locale-string 1234.567 #t fr))))))))
pgpWtSvgdprWz.pgp
Description: PGP signature