Integrate with Sarathy.
[p5sagit/p5-mst-13.2.git] / dump.c
diff --git a/dump.c b/dump.c
index ef0d858..450ab86 100644 (file)
--- a/dump.c
+++ b/dump.c
@@ -15,6 +15,7 @@
 #include "EXTERN.h"
 #define PERL_IN_DUMP_C
 #include "perl.h"
+#include "regcomp.h"
 
 #ifndef DBL_DIG
 #define DBL_DIG        15   /* A guess that works lots of places */
@@ -277,8 +278,9 @@ Perl_sv_peek(pTHX_ SV *sv)
        }
     }
     else if (SvNOKp(sv)) {
-       SET_NUMERIC_STANDARD();
+       RESTORE_NUMERIC_STANDARD();
        Perl_sv_catpvf(aTHX_ t, "(%g)",SvNVX(sv));
+       RESTORE_NUMERIC_LOCAL();
     }
     else if (SvIOKp(sv)) {             /* XXXX: IV, UV? */
        if (SvIsUV(sv))
@@ -542,17 +544,7 @@ Perl_do_op_dump(pTHX_ I32 level, PerlIO *file, OP *o)
            PerlIO_printf(file, "DONE\n");
        break;
     case OP_COND_EXPR:
-       Perl_dump_indent(aTHX_ level, file, "TRUE ===> ");
-       if (cCONDOPo->op_true)
-           PerlIO_printf(file, "%d\n", cCONDOPo->op_true->op_seq);
-       else
-           PerlIO_printf(file, "DONE\n");
-       Perl_dump_indent(aTHX_ level, file, "FALSE ===> ");
-       if (cCONDOPo->op_false)
-           PerlIO_printf(file, "%d\n", cCONDOPo->op_false->op_seq);
-       else
-           PerlIO_printf(file, "DONE\n");
-       break;
+    case OP_RANGE:
     case OP_MAPWHILE:
     case OP_GREPWHILE:
     case OP_OR:
@@ -895,8 +887,9 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
        PerlIO_putc(file, '\n');
     }
     if (type >= SVt_PVNV || type == SVt_NV) {
-       SET_NUMERIC_STANDARD();
+       RESTORE_NUMERIC_STANDARD();
        Perl_dump_indent(aTHX_ level, file, "  NV = %.*g\n", DBL_DIG, SvNVX(sv));
+       RESTORE_NUMERIC_LOCAL();
     }
     if (SvROK(sv)) {
        Perl_dump_indent(aTHX_ level, file, "  RV = 0x%lx\n", (long)SvRV(sv));
@@ -970,7 +963,7 @@ Perl_do_sv_dump(pTHX_ I32 level, PerlIO *file, SV *sv, I32 nest, I32 maxnest, bo
            int i;
            int max = 0;
            U32 pow2 = 2, keys = HvKEYS(sv);
-           double theoret, sum = 0;
+           NV theoret, sum = 0;
 
            PerlIO_printf(file, "  (");
            Zero(freq, FREQ_MAX + 1, int);