Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:
I seem to be encountering some kind of overflow bug with vec. To wit:
memtime perl -e '$h = ""; $x = (2**31)-2; vec($h,$x,8) = 0;' Exit [0] 0.94 user, 1.34 system, 2.30 elapsed -- Max VSize = 2115872KB, Max RSS + = 2042140KB
Runs as expected, but:
memtime perl -e '$h = ""; $x = (2**31)-1; vec($h,$x,8) = 0;' Out of memory! Exit [1] 0.00 user, 0.00 system, 0.10 elapsed -- Max VSize = 3720KB, Max RSS = +192KB
Seems to ask for too much memory, and
memtime perl -e '$h = ""; $x = (2**31); vec($h,$x,8) = 0;' Negative offset to vec in lvalue context at -e line 1. Exit [255] 0.00 user, 0.00 system, 0.10 elapsed -- Max VSize = 3720KB, Max RSS = +128KB
has another problem altogether.
Is this a problem with vec? My Perl build? My syntax? Any workarounds?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: vec overflow?
by BrowserUk (Patriarch) on Jun 25, 2013 at 00:58 UTC | |
by Anonymous Monk on Jun 25, 2013 at 01:07 UTC | |
by BrowserUk (Patriarch) on Jun 25, 2013 at 01:34 UTC | |
|
Re: vec overflow?
by LanX (Saint) on Jun 25, 2013 at 00:48 UTC | |
by BrowserUk (Patriarch) on Jun 25, 2013 at 08:49 UTC | |
by LanX (Saint) on Jun 25, 2013 at 09:46 UTC | |
by BrowserUk (Patriarch) on Jun 25, 2013 at 13:47 UTC | |
by LanX (Saint) on Jun 25, 2013 at 14:04 UTC | |
|