summaryrefslogtreecommitdiff
path: root/pp.c
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2000-11-18 00:28:56 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2000-11-18 00:28:56 +0000
commit2f3a5373a206f22b10d28792b4ecbe362c59c3bd (patch)
tree0e94d18c6eb3e0a6dc7fcbf763469c5d389695c9 /pp.c
parent205fdb4dcc2a09a94a9a700fc43fd510076b1d5a (diff)
downloadperl-2f3a5373a206f22b10d28792b4ecbe362c59c3bd.tar.gz
Sparc 64-bit pack() fix from Jens Hamisch.
p4raw-id: //depot/perl@7732
Diffstat (limited to 'pp.c')
-rw-r--r--pp.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/pp.c b/pp.c
index 6001165e37..7a430927e2 100644
--- a/pp.c
+++ b/pp.c
@@ -3935,7 +3935,6 @@ PP(pp_unpack)
if (checksum) {
#if LONGSIZE != SIZE32
if (natint) {
- long along;
while (len-- > 0) {
COPYNN(s, &along, sizeof(long));
s += sizeof(long);
@@ -3949,6 +3948,9 @@ PP(pp_unpack)
#endif
{
while (len-- > 0) {
+#if LONGSIZE > SIZE32 && INTSIZE == SIZE32
+ I32 along;
+#endif
COPY32(s, &along);
#if LONGSIZE > SIZE32
if (along > 2147483647)
@@ -3967,7 +3969,6 @@ PP(pp_unpack)
EXTEND_MORTAL(len);
#if LONGSIZE != SIZE32
if (natint) {
- long along;
while (len-- > 0) {
COPYNN(s, &along, sizeof(long));
s += sizeof(long);
@@ -3980,6 +3981,9 @@ PP(pp_unpack)
#endif
{
while (len-- > 0) {
+#if LONGSIZE > SIZE32 && INTSIZE == SIZE32
+ I32 along;
+#endif
COPY32(s, &along);
#if LONGSIZE > SIZE32
if (along > 2147483647)