The specific question is about the internal perl
array index type as exposed by the perlapi.  E.g.,

    SV*     av_delete(AV *av, I32 key, I32 flags)
    bool    av_exists(AV *av, I32 key)
    void    av_extend(AV *av, I32 key)
    SV**    av_fetch(AV *av, I32 key, I32 lval)
    void    av_fill(AV *av, I32 fill)
    I32     av_len(const AV *av)
    ....

where you can see the I32 type everywhere.  I
found no instance where it is not I32 in my
perldoc searches nor in my various google
attempts.  Maybe the feature is available in
a late model perl.

Thanks for the reply,
Chris



On Thu, Feb 23, 2012 at 8:55 PM, Sisyphus <[email protected]> wrote:
>
> ----- Original Message ----- From: "Chris Marshall"
>
>
>> Is there such a thing as a "true 64bit perl" where
>> the number of elements in an array would be
>> indexed with, say, a 64bit int data type?
>
>
> I've been told there exists compilers on some 64-bit systems where
> sizeof(int) == 8.
> One would expect that a perl built with such a compiler would index its
> arrays with a 64-bit integer data type.
>
> I don't have access to any "-Duse64bitall" builds of perl. I assumed they
> would index their arrays with a 64-bit integer data type, but am unable to
> check.
>
> Note also that the *absence* of the use64bitxxx flags does not imply
> 32-bits. (You need to examine other flags, such as ivsize.) From the INSTALL
> file that ships with the perl source:
>
> #################################
> Natively 64-bit systems need neither -Duse64bitint nor -Duse64bitall.
> On these systems, it might be the default compilation mode, and there
> is currently no guarantee that passing no use64bitall option to the
> Configure process will build a 32bit perl. Implementing -Duse32bit*
> options is planned for a future release of perl.
> #################################
>
> Cheers,
> Rob
>

_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to