On 07/27/2017 04:33 PM, Tom Lane wrote: > Robert Haas <robertmh...@gmail.com> writes: >> How about we fix it like this? > That seems pretty invasive; I'm not excited about breaking a lot of > unrelated code (particularly third-party extensions) for plperl's benefit. > Even if we wanted to do that in HEAD, it seems like a nonstarter for > released branches. > > An even bigger issue is that if Perl feels free to redefine sigsetjmp, > what other libc calls might they decide to horn in on? > > So I was trying to figure a way to not include XSUB.h except in a very > limited part of plperl, like ideally just the .xs files. It's looking > like that would take nontrivial refactoring though :-(. Another problem > is that this critical bit of the library API is in XSUB.h: > > #if defined(PERL_IMPLICIT_CONTEXT) && !defined(PERL_NO_GET_CONTEXT) && > !defined(PERL_CORE) > # undef aTHX > # undef aTHX_ > # define aTHX PERL_GET_THX > # define aTHX_ aTHX, > #endif > > As best I can tell, that's absolute brain death on the part of the Perl > crew; it means you can't write working calling code at all without > including XSUB.h, or at least copying-and-pasting this bit out of it. > >
That's the sort of thing that prompted me to ask what was the minimal set of defines required to fix the original problem (assuming such a thing exists) We haven't used PERL_IMPLICIT_CONTEXT to date, and without ill effect. For example. it's in the ExtUtils::Embed::ccopts for the perl that jacana and bowerbird happily build and test against. cheers andrew -- Andrew Dunstan https://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers