Skip to content

Instantly share code, notes, and snippets.

@jeff
Last active April 7, 2021 21:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jeff/5419d2980da092ed5cfb97cbaf43b64e to your computer and use it in GitHub Desktop.
Save jeff/5419d2980da092ed5cfb97cbaf43b64e to your computer and use it in GitHub Desktop.
$ perlbrew exec perl -MDevel::Peek -e 'my $v = scalar(my @array); Dump($v);'
perl-5.32.1
==========
SV = PVNV(0x556be55730f0) at 0x556be5595dc8
REFCNT = 1
FLAGS = (IOK,NOK,POK,pIOK,pNOK,pPOK)
IV = 0
NV = 0
PV = 0x556be55834f0 "0"\0
CUR = 1
LEN = 10
perl-5.30.3
==========
SV = PVNV(0x562f1ff240f0) at 0x562f1ff47c40
REFCNT = 1
FLAGS = (IOK,NOK,POK,pIOK,pNOK,pPOK)
IV = 0
NV = 0
PV = 0x562f1ff3a320 "0"\0
CUR = 1
LEN = 10
perl-5.28.3
==========
SV = PVNV(0x5582b7f080f0) at 0x5582b7f23720
REFCNT = 1
FLAGS = (IOK,NOK,POK,pIOK,pNOK,pPOK)
IV = 0
NV = 0
PV = 0x5582b7f1d800 "0"\0
CUR = 1
LEN = 10
perl-5.26.3
==========
SV = IV(0x5649c7848988) at 0x5649c7848998
REFCNT = 1
FLAGS = (IOK,pIOK)
IV = 0
$ perlbrew exec perl -MDevel::Peek -e 'Dump scalar(my @array)'
perl-5.32.1
==========
SV = PVNV(0x558efdbb8050) at 0x558efd10e988
REFCNT = 2147483647
FLAGS = (PADTMP,IOK,NOK,POK,READONLY,PROTECT,pIOK,pNOK,pPOK)
IV = 0
NV = 0
PV = 0x558efced63e1 "0"
CUR = 1
LEN = 0
perl-5.30.3
==========
SV = PVNV(0x556eb1739050) at 0x556eb0ca8708
REFCNT = 2147483647
FLAGS = (PADTMP,IOK,NOK,POK,READONLY,PROTECT,pIOK,pNOK,pPOK)
IV = 0
NV = 0
PV = 0x556eb0a71ae1 "0"
CUR = 1
LEN = 0
perl-5.28.3
==========
SV = PVNV(0x5650010e5050) at 0x564fff81b768
REFCNT = 2147483647
FLAGS = (PADTMP,IOK,NOK,POK,READONLY,PROTECT,pIOK,pNOK,pPOK)
IV = 0
NV = 0
PV = 0x564fff5ec1e1 "0"
CUR = 1
LEN = 0
perl-5.26.3
==========
SV = IV(0x556f10b74180) at 0x556f10b74190
REFCNT = 1
FLAGS = (TEMP,IOK,pIOK)
IV = 0
$ perlbrew exec perl -MDevel::Peek -e 'Dump scalar(@array)'
perl-5.32.1
==========
SV = IV(0x561c8c98fd18) at 0x561c8c98fd28
REFCNT = 1
FLAGS = (PADTMP,IOK,pIOK)
IV = 0
perl-5.30.3
==========
SV = IV(0x56456f35abe0) at 0x56456f35abf0
REFCNT = 1
FLAGS = (PADTMP,IOK,pIOK)
IV = 0
perl-5.28.3
==========
SV = IV(0x5589fe2d56f0) at 0x5589fe2d5700
REFCNT = 1
FLAGS = (PADTMP,IOK,pIOK)
IV = 0
perl-5.26.3
==========
SV = IV(0x55e223f9c978) at 0x55e223f9c988
REFCNT = 1
FLAGS = (PADTMP,IOK,pIOK)
IV = 0
@jeff
Copy link
Author

jeff commented Apr 7, 2021

The REFCNT of 2147483647 for 'Dump scalar(my @array)' vs REFCNT of 1 for 'my $v = scalar(my @array); Dump($v);' is interesting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment