develooper Front page | perl.perl5.porters | Postings from September 2013

Re: [perl #119753] HAS_QUAD and 32 bit IVs on platforms with "quad"s

Thread Previous | Thread Next
From:
Aaron Crane
Date:
September 13, 2013 14:48
Subject:
Re: [perl #119753] HAS_QUAD and 32 bit IVs on platforms with "quad"s
Message ID:
CACmk_tvTBi2oiU_DyMfN-u3_o-xq1Vy9z19s2oKAbsjH_dPZpw@mail.gmail.com
Nicholas Clark <perlbug-followup@perl.org> wrote:
> I'm not sure that it's worth actually doing this part:
>
> commit 81775faa427fb3dcb687559381d9a5cb616d20b3
> Author: Nicholas Clark <nick@ccl4.org>
> Date:   Wed Sep 11 12:20:05 2013 +0100
>
>     Don't undefine HAS_QUAD with 32 bit IVs on a platform with a 64 bit type.
>
>     When commit de1c2614758a00c0 added support for $Config{d_quad} and HAS_QUAD
>     in Oct 1999, it also undefined HAS_QUAD. The presence of a 64 bit type
>     doesn't directly affect the choice of using 32 or 64 bit types for IVs, so
>     undefining this simply throws away information which might be of use to C
>     and XS code.

I agree that it's not worth it; HAS_QUAD's documentation has differed
from its behaviour for long enough that changing the latter seems
likely to break more than it fixes.

There may be a case for adding a HAS_QUAD_AVAILABLE preprocessor
symbol with the same behaviour as HAS_QUAD's documentation.  But, as
you point out, CPAN authors seem to have converged on just using long
long, which works in most places.  And the hypothetical new symbol
would only be available in 5.20+ (such things don't go into ppport.h,
right?), so its utility would seem to be low.

-- 
Aaron Crane ** http://aaroncrane.co.uk/

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About