On Thu, Feb 19, 2026 at 03:50:19PM +0200, Eli Zaretskii wrote: > I've built this with MinGW on MS-Windows. It builds (almost) cleanly > and passes all the tests. > > The "almost" part above is because I get the following compilation > warning: > > convert/call_html_perl_function.c: In function > 'call_file_id_setting_redirection_file_names': > convert/call_html_perl_function.c:606:27: warning: implicit declaration > of function 'strndup' [-Wimplicit-function-declaration] > 606 | = strndup (file_ret, len); > | ^~~~~~~ > convert/call_html_perl_function.c:606:27: warning: incompatible implicit > declaration of built-in function 'strndup' > > AFAICT, this is new in this pretest (apologies if I missed it in the > previous pretest).
It is indeed new, this function was added to follow up an addition to the HTML customization API after the changes in HTML external references in the release (which is needed for Lilypond and actually makes sense). > The link step succeeds, so the function is > available, just its prototype is somehow not visible to the compiler. > > I tried including <string.h>, but that didn't help, although the > Gnulib version of strndup is compiled and I see it in libgnu.a, and it > seems to be declared in Gnulib's string.h. Not sure what am I missing > here. Any ideas? The convert/call_html_perl_function.c file is not compiled with Gnulib headers, as it is compiled with Perl headers and they are incompatible. Accordingly, there is no #include <config.h>. However, adding <string.h> is supposed to work and is included in other similar files such as tta/C/main/build_perl_info.c, so why including <string.h> does not help eludes me. Something that comes to me is that the libc includes are before the Perl includes, before the comment /* Avoid namespace conflicts. */ maybe you added the include later on, and it could matter? I will add the include anyway as it should be there, thanks for the report. -- Pat
