Robert Haas <robertmh...@gmail.com> writes: > On Thu, Aug 10, 2017 at 8:30 AM, Ashutosh Sharma <ashu.coe...@gmail.com> > wrote: >> So, the question is should we allow the preprocessor option >> '_USE_32BIT_TIME_T' to be defined implicitly or not in postgresql >> provided we are using Visual C compiler version > 8.0. I think this >> should make plperl compatible with perl binaries.
> We've got this code in MSBuildProject.pm and VCBuildProject.pm: > # We have to use this flag on 32 bit targets because the 32bit perls > # are built with it and sometimes crash if we don't. > my $use_32bit_time_t = > $self->{platform} eq 'Win32' ? '_USE_32BIT_TIME_T;' : ''; > Based on the discussion upthread, I think we now know that this was > not really the right approach. Yeah ... however, if that's there, then there's something wrong with Ashutosh's explanation, because that means we *are* building with _USE_32BIT_TIME_T in 32-bit builds. It's just getting there in a roundabout way. (Or, alternatively, this code is somehow not doing anything at all.) > The trouble with that is that _USE_32BIT_TIME_T also affects how > PostgreSQL code compiles. Really? We try to avoid touching "time_t" at all in most of the code. I bet that we could drop the above-cited code, and compile only plperl with _USE_32BIT_TIME_T, taken (if present) from the Perl flags, and it'd be fine. At least, that's my first instinct for what to try. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers