This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Make certain pp_sin result is always initialized.
authorJarkko Hietaniemi <jhi@iki.fi>
Tue, 2 Sep 2014 00:06:39 +0000 (20:06 -0400)
committerJarkko Hietaniemi <jhi@iki.fi>
Tue, 2 Sep 2014 00:15:06 +0000 (20:15 -0400)
pp.c

diff --git a/pp.c b/pp.c
index 723986c..b098ede 100644 (file)
--- a/pp.c
+++ b/pp.c
@@ -2703,7 +2703,7 @@ PP(pp_sin)
     {
       SV * const arg = POPs;
       const NV value = SvNV_nomg(arg);
     {
       SV * const arg = POPs;
       const NV value = SvNV_nomg(arg);
-      NV result;
+      NV result = NV_NAN;
       if (neg_report) { /* log or sqrt */
          if (op_type == OP_LOG ? (value <= 0.0) : (value < 0.0)) {
              SET_NUMERIC_STANDARD();
       if (neg_report) { /* log or sqrt */
          if (op_type == OP_LOG ? (value <= 0.0) : (value < 0.0)) {
              SET_NUMERIC_STANDARD();
@@ -2712,6 +2712,7 @@ PP(pp_sin)
          }
       }
       switch (op_type) {
          }
       }
       switch (op_type) {
+      default:
       case OP_SIN:  result = Perl_sin(value);  break;
       case OP_COS:  result = Perl_cos(value);  break;
       case OP_EXP:  result = Perl_exp(value);  break;
       case OP_SIN:  result = Perl_sin(value);  break;
       case OP_COS:  result = Perl_cos(value);  break;
       case OP_EXP:  result = Perl_exp(value);  break;