On Sat, Feb 28, 2026 at 04:30:47PM +0100, Bruno Haible wrote:
> Hello Patrice,
> 
> > Something that I really do not understand is why this issue does not
> > happen for some variables in the texinfo libraries used by the XS
> > modules objects.  ...
> > Therefore, the translated_special_unit_info symbol seems to be in two
> > different compilation units, and should be used in a function called
> > in tests, and yet there is no failure.
> 
> For the problem to occur, you need to have
>   - one access of the variable in libtexinfo,
>   - AND one access of the variable in the ConvertXS module shared library,
>   - AND one of these is read/write, and the other one depends on it.

I tried to check all the extern variables, and found the following that
are set in libtexinfo, used in other libraries and set dynamically, such
that, if I understand well, they fall in the situation you described.
Yet they do not cause the tests to fail in cygwin github CI and in Eli
tests:

C/main/customization_options.h: txi_base_options, txi_base_sorted_options,
txi_options_command_map => libtexinfo-convert (converter.c, format_html.c...)
C/main/document.h: txi_paths_info => libtexinfo-convert (convert_html.c...),
                                     libtexinfo-main (texinfo.c)
C/main/translations.h: translation_cache
  => libtexinfo-convert (converter.c, convert_to_text.c)
C/main/unicode.h: unicode_character_brace_no_arg_commands
  => libtexinfo-convert (html_prepare_converter.c)
C/main/utils.h: output_conversions, input_conversions
  => libtexinfo-convert (html_prepare_converter.c...),
     libtexinfo-main (swig_interface.c)

In any case, if this is actually an issue, it should be easy either to
add some __declspec or add some functions to get the variables in other
libraries (they tend to be set in the library they are part of).

-- 
Pat

    • ... Eli Zaretskii
      • ... Eli Zaretskii
        • ... Bruno Haible via Bug reports for the GNU Texinfo documentation system
          • ... Eli Zaretskii
          • ... Eli Zaretskii
          • ... Gavin Smith
          • ... pertusus
          • ... Bruno Haible via Bug reports for the GNU Texinfo documentation system
          • ... pertusus
          • ... Bruno Haible via Bug reports for the GNU Texinfo documentation system
          • ... pertusus
        • ... pertusus
        • ... Gavin Smith
    • ... pertusus
      • ... Eli Zaretskii
        • ... Gavin Smith
          • ... pertusus
          • ... Eli Zaretskii
  • Re: ... pertusus
    • ... Eli Zaretskii

Reply via email to