$ perl -MConfig -MB=svref_2object,SVf_IVisUV,SVf_NOK -e' $i = hex(("FF"x($Config{ivsize}-1))."FD"); $sv = svref_2object(\$i); for (1..4) { ++$i; printf $sv->FLAGS & SVf_NOK ? "NV %.0f\n" : $sv->FLAGS & SVf_IVisUV ? "UV %u\n" : "IV %d\n", $i; } ' UV 18446744073709551614 UV 18446744073709551615 <-- 2**64 - 1 Largest UV NV 18446744073709551616 <-- 2**64 1 bit of precision required NV 18446744073709551616 <-- 2**64 + 1 65, but only 53 are available