summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doio.c1
-rw-r--r--ext/B/B.xs2
-rw-r--r--ext/XS/APItest/APItest.xs1
-rw-r--r--hv.c2
-rw-r--r--op.c2
-rw-r--r--pp.c2
-rw-r--r--pp_pack.c2
-rw-r--r--utf8.c1
8 files changed, 7 insertions, 6 deletions
diff --git a/doio.c b/doio.c
index 809459feb9..585eb545fb 100644
--- a/doio.c
+++ b/doio.c
@@ -1287,6 +1287,7 @@ Perl_my_stat(pTHX)
return (PL_laststatval = PerlLIO_fstat(dirfd(IoDIRP(io)), &PL_statcache));
#else
Perl_die(aTHX_ PL_no_func, "dirfd");
+ NORETURN_FUNCTION_END;
#endif
} else {
if (ckWARN2(WARN_UNOPENED,WARN_CLOSED))
diff --git a/ext/B/B.xs b/ext/B/B.xs
index 2e3e4b1405..2eedb95ac2 100644
--- a/ext/B/B.xs
+++ b/ext/B/B.xs
@@ -1170,7 +1170,7 @@ COP_warnings(o)
ST(0) = make_warnings_object(aTHX_ sv_newmortal(), o->cop_warnings);
XSRETURN(1);
-B::SV
+void
COP_io(o)
B::COP o
PPCODE:
diff --git a/ext/XS/APItest/APItest.xs b/ext/XS/APItest/APItest.xs
index bcf46ee3ad..0bba0bbce7 100644
--- a/ext/XS/APItest/APItest.xs
+++ b/ext/XS/APItest/APItest.xs
@@ -225,7 +225,6 @@ test_hv_delayfree_ent()
SV *
test_share_unshare_pvn(input)
PREINIT:
- SV *output;
STRLEN len;
U32 hash;
char *pvx;
diff --git a/hv.c b/hv.c
index c3a418875b..164351584a 100644
--- a/hv.c
+++ b/hv.c
@@ -2766,7 +2766,7 @@ Perl_refcounted_he_fetch(pTHX_ const struct refcounted_he *chain, SV *keysv,
#else
if (hash != HEK_HASH(chain->refcounted_he_hek))
continue;
- if (klen != HEK_LEN(chain->refcounted_he_hek))
+ if (klen != (STRLEN)HEK_LEN(chain->refcounted_he_hek))
continue;
if (memNE(HEK_KEY(chain->refcounted_he_hek),key,klen))
continue;
diff --git a/op.c b/op.c
index 45ccd85ef2..1a4ab2dfae 100644
--- a/op.c
+++ b/op.c
@@ -2233,7 +2233,7 @@ Perl_fold_constants(pTHX_ register OP *o)
if (type == OP_RV2GV)
newop = newGVOP(OP_GV, 0, (GV*)sv);
else
- newop = newSVOP(OP_CONST, 0, sv);
+ newop = newSVOP(OP_CONST, 0, (SV*)sv);
op_getmad(o,newop,'f');
return newop;
diff --git a/pp.c b/pp.c
index 638b1e1441..df1663597f 100644
--- a/pp.c
+++ b/pp.c
@@ -4035,7 +4035,7 @@ PP(pp_hslice)
STRLEN keylen;
const char * const key = SvPV_const(keysv, keylen);
SAVEDELETE(hv, savepvn(key,keylen),
- SvUTF8(keysv) ? -keylen : keylen);
+ SvUTF8(keysv) ? -(I32)keylen : keylen);
}
}
}
diff --git a/pp_pack.c b/pp_pack.c
index fe41b3e792..b593e30c9e 100644
--- a/pp_pack.c
+++ b/pp_pack.c
@@ -2962,7 +2962,7 @@ S_pack_rec(pTHX_ SV *cat, tempsym_t* symptr, SV **beglist, SV **endlist )
break;
case 'W': {
char *end;
- U8 in_bytes = IN_BYTES;
+ U8 in_bytes = (U8)IN_BYTES;
end = start+SvLEN(cat)-1;
if (utf8) end -= UTF8_MAXLEN-1;
diff --git a/utf8.c b/utf8.c
index 3b2297a993..28ac605295 100644
--- a/utf8.c
+++ b/utf8.c
@@ -1741,6 +1741,7 @@ Perl_swash_fetch(pTHX_ SV *swash, const U8 *ptr, bool do_utf8)
return (tmps[off] << 24) + (tmps[off+1] << 16) + (tmps[off+2] << 8) + tmps[off + 3] ;
}
Perl_croak(aTHX_ "panic: swash_fetch got swatch of unexpected bit width");
+ NORETURN_FUNCTION_END;
}
/* Note: