From: David Filmer on
How can I tell if a perl interpreter was built at 32 or 64 bits?

If I do "perl -V" I see:
use64bitint=undef, use64bitall=undef
So maybe it's 32-bits, but that doesn't really seem definitive.

Thanks!
From: Sherm Pendley on
David Filmer <usenet(a)davidfilmer.com> writes:

> How can I tell if a perl interpreter was built at 32 or 64 bits?
>
> If I do "perl -V" I see:
> use64bitint=undef, use64bitall=undef

Yep, that's how you can tell. Why did you ask if you already knew?

sherm--

--
Sherm Pendley <www.shermpendley.com>
<www.camelbones.org>
Cocoa Developer
From: David Filmer on
On Jul 29, 11:43 am, Sherm Pendley <sherm.pend...(a)gmail.com> wrote:

> Yep, that's how you can tell. Why did you ask if you already knew?

Because the flags don't say "use64bitint=no" - they say undef. So, if
the interpreter is built on a 64-bit system, and those flags aren't
defined, I thought it would probably default to 64-bits. That's how
it _should_ work, IMHO.

--
http://DavidFilmer.com
From: Uri Guttman on
>>>>> "DF" == David Filmer <davidfilmer(a)gmail.com> writes:

DF> On Jul 29, 11:43�am, Sherm Pendley <sherm.pend...(a)gmail.com> wrote:
>> Yep, that's how you can tell. Why did you ask if you already knew?

DF> Because the flags don't say "use64bitint=no" - they say undef. So, if
DF> the interpreter is built on a 64-bit system, and those flags aren't
DF> defined, I thought it would probably default to 64-bits. That's how
DF> it _should_ work, IMHO.

not really. undef is a false value in perl so it is also false in the
config file. in fact the Config.pm module is used to dump those values
with -V so that is showing what is really there which is undef (or
possibly even doesn't exist which has a value of undef).

uri

--
Uri Guttman ------ uri(a)stemsystems.com -------- http://www.sysarch.com --
----- Perl Code Review , Architecture, Development, Training, Support ------
--------- Gourmet Hot Cocoa Mix ---- http://bestfriendscocoa.com ---------
From: Ben Morrow on

Quoth David Filmer <davidfilmer(a)gmail.com>:
> On Jul 29, 11:43�am, Sherm Pendley <sherm.pend...(a)gmail.com> wrote:
>
> > Yep, that's how you can tell. Why did you ask if you already knew?
>
> Because the flags don't say "use64bitint=no" - they say undef. So, if
> the interpreter is built on a 64-bit system, and those flags aren't
> defined, I thought it would probably default to 64-bits. That's how
> it _should_ work, IMHO.

Those flags don't say 'yes' or 'no', they say 'define' or 'undef'.
'undef' means 'no'. (Sometimes they say 'y' or 'n', but these are
equivalent to 'define' and 'undef'.)

The most reliable way to tell is to look at 'ivsize' and 'ptrsize',
which tell you the sizes of (Perl) integers and pointers respectively.
I *think* a perl with 64bit pointers and integers will always have
use64bitall set, but I'm not entirely sure.

Ben