> Date: Thu, 14 Nov 2024 11:56:11 +0100 > From: Patrice Dumas <pertu...@free.fr> > Cc: Gavin Smith <gavinsmith0...@gmail.com>, bug-texinfo@gnu.org > > On Tue, Nov 12, 2024 at 04:27:21PM +0200, Eli Zaretskii wrote: > > 4. Compilation error in api_to_perl.c: > > > > In file included from D:/usr/Perl/lib/CORE/perl.h:5056, > > from main/api_to_perl.c:23: > > D:/usr/Perl/lib/CORE/embedvar.h:58:23: error: expected ')' before '->' > > token > > 58 | #define PL_Mem (vTHX->IMem) > > | ^~ > > In file included from D:/usr/Perl/lib/CORE/perl.h:3277, > > from main/api_to_perl.c:23: > > D:/usr/Perl/lib/CORE/iperlsys.h:813:10: error: expected ')' before > > '->' token > > 813 | (*PL_Mem->pFree)(PL_Mem, (buf)) > > | ^~ > > Makefile:3749: recipe for target `main/libtexinfo_la-api_to_perl.lo' > > failed > > This happens early, but config.h is already in and, maybe more > importantly, the headers shipped with gnulib are used in the > compilation, which may have an effect here
Yes, but which header exactly causes the syntax error? I don't see vTHX mentioned in any header in the Texinfo tree, except this: tp/Texinfo/XS/ppport.h:10353:vTHX|5.006000||Viu Could this cause the problem? (I don't understand what ppport.h tries to do here.) Or maybe this part of ppport.h causes the problem: #ifndef aTHX # define aTHX #endif because Perl's embedvar.h does #if defined(MULTIPLICITY) /* cases 2 and 3 above */ # if defined(PERL_IMPLICIT_CONTEXT) # define vTHX aTHX # else # define vTHX PERL_GET_INTERP # endif (I'm obviously stabbing in the dark here.)