summaryrefslogtreecommitdiff
path: root/pp.c
diff options
context:
space:
mode:
authorCraig A. Berry <craigberry@mac.com>2010-01-16 16:15:47 -0600
committerCraig A. Berry <craigberry@mac.com>2010-01-16 17:17:50 -0600
commit596f450b74e963069b08e852c2f88cad7d3ef2e6 (patch)
tree37d66abde0362ef78a6d61ed4aa4cfb33627343d /pp.c
parent8d08d9baca8b5e17813fd3fbfe3510d7ba6097f7 (diff)
downloadperl-596f450b74e963069b08e852c2f88cad7d3ef2e6.tar.gz
A fig leaf for calling sv_pos_u2b with IV* where it expects I32*.
Following v5.11.3-103-gb6d1426, any compiler paying attention whines about the pointer mismatch (which on VMS breaks the build). Zefram reports a further patch in progress: Message-ID: <20100116022631.GA10264@fysh.org> but this gets the warning out of the way so other work can proceed.
Diffstat (limited to 'pp.c')
-rw-r--r--pp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/pp.c b/pp.c
index 4735c94cfb..089401bdb6 100644
--- a/pp.c
+++ b/pp.c
@@ -3169,8 +3169,11 @@ PP(pp_substr)
else {
const IV upos = pos;
const IV urem = rem;
+ /* FIXME -- if an IV is longer than an I32, we're truncating here,
+ * but a 64-bit version of sv_pos_u2b is not (yet) available.
+ */
if (utf8_curlen)
- sv_pos_u2b(sv, &pos, &rem);
+ sv_pos_u2b(sv, (I32 *)&pos, (I32 *)&rem);
tmps += pos;
/* we either return a PV or an LV. If the TARG hasn't been used
* before, or is of that type, reuse it; otherwise use a mortal