Skip Menu |

This queue is for tickets about the Math-Int64 CPAN distribution.

Report information
The Basics
Id: 127844
Status: new
Priority: 0/
Queue: Math-Int64

People
Owner: Nobody in particular
Requestors: zazik [...] hotmail.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: SVf_IVisUV is not set for uint64
Date: Thu, 29 Nov 2018 19:24:16 +0000
To: "bug-Math-Int64 [...] rt.cpan.org" <bug-Math-Int64 [...] rt.cpan.org>
From: Yuriy Z <zazik [...] hotmail.com>
Hello, I have an issue with Math::Int64 package about SVf_IVisUV flag in uint64 SV. Apparently, it is not set unlike in native unsigned numbers. (Perl64-5.26): use Devel::Peek; use Math::UInt64 qw(uint64); my $var1 = uint64('12297829380182385186'); my $var2 = 12297829380182385186; Dump $var1; Dump $var2; output: SV = IV(0x4811c60) at 0x4811c70 REFCNT = 1 FLAGS = (ROK) RV = 0x2ded370 SV = PVMG(0x4850ac8) at 0x2ded370 REFCNT = 1 FLAGS = (OBJECT,IOK,READONLY,pIOK) IV = -6148914693527166430 NV = 0 PV = 0 STASH = 0x485fc30 "Math::UInt64" SV = IV(0x4812320) at 0x4812330 REFCNT = 1 FLAGS = (IOK,pIOK,IsUV) UV = 12297829380182385186 Obviously, I can check stash class name, but it adds a certain overhead that I try to avoid. Did you have some other technique in mind determining whether it's unsigned or is it a bug? Thank you, Yuriy.