develooper Front page | perl.perl5.porters | Postings from February 2018

[perl #132876] ppport.h breaks croak_xs_usage() on old Perls

Thread Previous | Thread Next
Tony Cook via RT
February 27, 2018 00:12
[perl #132876] ppport.h breaks croak_xs_usage() on old Perls
Message ID:
On Sat, 24 Feb 2018 15:54:52 -0800, wrote:
> Tony Cook via RT wrote:
> >Do the attached fix this for you?
> No, that's not a correct fix.  By avoiding defining
> PERL_ARGS_ASSERT_CROAK_XS_USAGE it avoids suppressing the XS boilerplate
> definition of croak_xs_usage(), but ppport.h still defines its own
> croak_xs_usage().  The two definitions then conflict:
> Cwd.c:678:0: warning: "croak_xs_usage" redefined
>  #define croak_xs_usage        S_croak_xs_usage
>  ^
> In file included from Cwd.xs:14:0:
> ppport.h:5342:0: note: this is the location of the previous definition
>  #define croak_xs_usage DPPP_(my_croak_xs_usage)
>  ^
> gcc only warns, but non-identical macro redefinition is not legal C,

The notes on my second patch say:

If the including code attempts to define its own fallback, as EU::PXS code does, it also prevents a macro redefinition, most likely with a different token sequence which the C standard forbids.

Did you apply both patches?


via perlbug:  queue: perl5 status: open

Thread Previous | Thread Next Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About