Subject: Re: bug#65978: comp-tests-ret-type-spec-71 fails on 32-bit powerpc

From: Andrea Corallo <[email-masked]>
Date: Thu, 14 Sep 2023 10:44:54 -0400

Eli Zaretskii <[email-masked]> writes:

>> Cc: debian-powerpc <[email-masked]>
>> From: John Paul Adrian Glaubitz <[email-masked]>
>> Date: Thu, 14 Sep 2023 14:28:24 +0200
>> 
>> Hello!
>> 
>> The test comp-tests-ret-type-spec-71 reproducibly fails on 32-bit powerpc:
>> 
>> Test comp-tests-ret-type-spec-71 backtrace:
>>   signal(ert-test-failed (((should (equal (cl-third (subr-type (symbol
>>   ert-fail(((should (equal (cl-third (subr-type (symbol-function f-nam
>>   comp-tests-check-ret-type-spec((defun comp-tests-ret-type-spec-f (x)
>>   #f(compiled-function () #<bytecode -0x221c87d>)()
>>   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
>>   ert-run-test(#s(ert-test :name comp-tests-ret-type-spec-71 :document
>>   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
>>   ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
>>   ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
>>   ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
>>   command-line-1(("-L" ":/<<PKGBUILDDIR>>/debian/build
>>   command-line()
>>   normal-top-level()
>> Test comp-tests-ret-type-spec-71 condition:
>>     (ert-test-failed
>>      ((should
>>        (equal
>> 	(cl-third ...)
>> 	ret-type))
>>       :form
>>       (equal
>>        (or
>> 	(member 0.0 -0.0)
>> 	(integer 0 0))
>>        (or
>> 	(member -0.0 0.0)
>> 	(integer 0 0)))
>>       :value nil :explanation
>>       (list-elt 1
>> 		(list-elt 1
>> 			  (different-atoms 0.0 -0.0)))))
>>    FAILED  145/166  comp-tests-ret-type-spec-71 (0.399696 sec)
>
> Something about the sign of zero, I guess?  Adding Andreas, in the
> hope that he will have some suggestions.

Mmmh, I guess some of our sorting or compare function behaves
differently on this architecture... I'll try look closer at the code
tomorrow and try to guess something more precise.

Thanks

   Andrea