bug#81471: 31.0.91; emacs-module-tests failures on 32-bit Solaris sparc

Eli Zaretskii <[email protected]>
Newsgroups gmane.emacs.bugs
Message-ID <[email protected]>
Ping!  Paul, could you please answer my question below?

> Cc: [email protected]
> Date: Sat, 25 Jul 2026 12:20:29 +0300
> From: Eli Zaretskii <[email protected]>
> 
> > Date: Fri, 24 Jul 2026 13:54:26 -0700
> > From: Paul Eggert <[email protected]>
> > 
> > Test mod-test-sum-test backtrace:
> >    signal(ert-test-failed (((should (eq 0 (string-match (concat "#<modu
> >    ert-fail(((should (eq 0 (string-match (concat "#<module function " "
> >    #f(compiled-function () #<bytecode 0x1197bafc>)()
> >    #f(compiled-function () #<bytecode 0x105d20f5>)()
> >    handler-bind-1(#f(compiled-function () #<bytecode 0x105d20f5>) (t) #
> >    ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
> >    ert-run-test(#s(ert-test :name mod-test-sum-test :documentation nil
> >    ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
> >    ert-run-tests((not (or (tag :expensive-test) (tag :unstable) (tag :n
> >    ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable) (
> >    ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
> >    eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
> >    command-line-1(("-L" ":../../emacs-31.0.91/test" "-l" "ert" "--eval"
> >    command-line()
> >    normal-top-level()
> > Test mod-test-sum-test condition:
> >      (ert-test-failed
> >       ((should (eq 0 (string-match ... ...))) :form (eq 0 nil) :value nil))
> >     FAILED  21/39  mod-test-sum-test (0.001453 sec) at 
> > ../../emacs-31.0.91/test/src/emacs-module-tests.el:62
> >     passed  22/39  mod-test-userptr-fun-test (0.000945 sec)
> >     passed  23/39  mod-test-vector-test (0.094084 sec)
> >     passed  24/39  module--func-arity (0.000476 sec)
> >     passed  25/39  module--help-function-arglist (0.000782 sec)
> >     passed  26/39  module--test-assertions--call-emacs-from-gc (1.251811 
> > sec)
> >     passed  27/39  module--test-assertions--globref-invalid-free 
> > (0.409340 sec)
> >     passed  28/39  module--test-assertions--load-non-live-object 
> > (0.378959 sec)
> >     passed  29/39 
> > module--test-assertions--load-non-live-object-with-global-copy (0.486450 
> > sec)
> >    skipped  30/39  module-darwin-secondary-suffix (0.000958 sec)
> > Test module-function-object backtrace:
> >    signal(ert-test-failed (((should (string-match-p (rx bos "#<module f
> >    ert-fail(((should (string-match-p (rx bos "#<module function " (or "
> >    #f(compiled-function () #<bytecode 0xf78a704>)()
> >    #f(compiled-function () #<bytecode 0x105d20f5>)()
> >    handler-bind-1(#f(compiled-function () #<bytecode 0x105d20f5>) (t) #
> >    ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
> >    ert-run-test(#s(ert-test :name module-function-object :documentation
> >    ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
> >    ert-run-tests((not (or (tag :expensive-test) (tag :unstable) (tag :n
> >    ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable) (
> >    ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
> >    eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
> >    command-line-1(("-L" ":../../emacs-31.0.91/test" "-l" "ert" "--eval"
> >    command-line()
> >    normal-top-level()
> > Test module-function-object condition:
> >      (ert-test-failed
> >       ((should
> >         (string-match-p
> > 	(rx bos "#<module function " ... " with data 0x1234" ... ">" eos)
> > 	(prin1-to-string func)))
> >        :form
> >        (string-match-p
> >         "\\`#<module function \\(?:Fmod_test_sum\\|at 0x[[:xdigit:]]+\\) 
> > with data 0x1234\\(?: from .*mod-test.*\\)?>\\'"
> >         "#<module function _fini with data 0x1234 from 
> > /var/run/rpc_door/eggert/build-gcc/test/src/emacs-module-resources/mod-test.so>")
> >        :value nil))
> >     FAILED  31/39  module-function-object (0.001274 sec) at 
> 
> Both tests seem to fail due to the same reason: the way a module
> function is printed on this platform is unexpected.  It seems to be
> 
>   "#<module function _fini with data 0x1234 from /var/run/rpc_door/eggert/build-gcc/test/src/emacs-module-resources/mod-test.so>"
> 
> Can you please tell whether _all_ module functions are always printed
> like that, with "_fini" being their (non-specific) symbol?  If that's
> the problem, and modules otherwise work on this system, then we should
> simply fix the regexp to support that.
> 
> 
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.