[patch perlguts.pod] save_item doesn't handle magic
[p5sagit/p5-mst-13.2.git] / toke.c
diff --git a/toke.c b/toke.c
index bc4194b..627468c 100644 (file)
--- a/toke.c
+++ b/toke.c
@@ -2189,6 +2189,11 @@ Perl_yylex_r(pTHX_ YYSTYPE *lvalp, int *lcharp)
        Perl_croak(aTHX_ "panic: YYMAXLEVEL");
 
     r = Perl_yylex(aTHX);
+#  ifdef EBCDIC
+    if (r >= 0 && r < 255) {
+       r = NATIVE_TO_ASCII(r);
+    }
+#  endif
 
     if (yyactlevel > 0)
        yyactlevel--;
@@ -6522,7 +6527,8 @@ S_scan_trans(pTHX_ char *start)
 
     New(803, tbl, complement&&!del?258:256, short);
     o = newPVOP(OP_TRANS, 0, (char*)tbl);
-    o->op_private = del|squash|complement|
+    o->op_private &= ~OPpTRANS_ALL;
+    o->op_private |= del|squash|complement|
       (DO_UTF8(PL_lex_stuff)? OPpTRANS_FROM_UTF : 0)|
       (DO_UTF8(PL_lex_repl) ? OPpTRANS_TO_UTF   : 0);