This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
sv.c: Silence some warnings
authorKarl Williamson <khw@cpan.org>
Fri, 12 Apr 2019 19:15:27 +0000 (13:15 -0600)
committerKarl Williamson <khw@cpan.org>
Fri, 12 Apr 2019 20:45:20 +0000 (14:45 -0600)
This adds a cast to silence a warning.  There could be loss of data, but
this is for the 'j' flag in printf which specifies the size the output
is to be in.

sv.c

diff --git a/sv.c b/sv.c
index 7aa35ab..9b659e8 100644 (file)
--- a/sv.c
+++ b/sv.c
@@ -12617,7 +12617,7 @@ Perl_sv_vcatpvfn_flags(pTHX_ SV *const sv, const char *const pat, const STRLEN p
                         case 't':  iv = va_arg(*args, ptrdiff_t);  break;
 #endif
                         default:   iv = va_arg(*args, int);        break;
-                        case 'j':  iv = va_arg(*args, PERL_INTMAX_T); break;
+                        case 'j':  iv = (IV) va_arg(*args, PERL_INTMAX_T); break;
                         case 'q':
 #if IVSIZE >= 8
                                    iv = va_arg(*args, Quad_t);     break;
@@ -12673,7 +12673,7 @@ Perl_sv_vcatpvfn_flags(pTHX_ SV *const sv, const char *const pat, const STRLEN p
                                    * uptrdiff_t, so oh well */
                         case 't': uv = va_arg(*args, ptrdiff_t);     break;
 #endif
-                        case 'j': uv = va_arg(*args, PERL_UINTMAX_T); break;
+                        case 'j': uv = (UV) va_arg(*args, PERL_UINTMAX_T); break;
                         default:  uv = va_arg(*args, unsigned);      break;
                         case 'q':
 #if IVSIZE >= 8