Safefree(PL_psig_ptr);
Safefree(PL_psig_name);
nuke_stacks();
+#ifdef EBCDIC
+ PL_hints = HINT_BYTE; /* Reset hints. Should hints be per-interpreter ? */
+#else
PL_hints = 0; /* Reset hints. Should hints be per-interpreter ? */
+#endif
DEBUG_P(debprofdump());
#ifdef USE_THREADS
HvNAME(PL_defstash) = savepv("main");
PL_incgv = gv_HVadd(gv_AVadd(gv_fetchpv("INC",TRUE, SVt_PVAV)));
GvMULTI_on(PL_incgv);
+#ifdef EBCDIC
+ PL_hintgv = gv_fetchpv("\010",TRUE, SVt_PV); /* ^H */
+#else
PL_hintgv = gv_fetchpv("\010",TRUE, SVt_PV); /* ^H */
+#endif
GvMULTI_on(PL_hintgv);
PL_defgv = gv_fetchpv("_",TRUE, SVt_PVAV);
PL_errgv = gv_HVadd(gv_fetchpv("@", TRUE, SVt_PV));
GvMULTI_on(PL_errgv);
+#ifdef EBCDIC
+ PL_replgv = gv_fetchpv("\022", TRUE, SVt_PV); /* ^R */
+#else
PL_replgv = gv_fetchpv("\022", TRUE, SVt_PV); /* ^R */
+#endif
GvMULTI_on(PL_replgv);
(void)Perl_form(aTHX_ "%240s",""); /* Preallocate temp - for immediate signals. */
sv_grow(ERRSV, 240); /* Preallocate - for immediate signals. */
#else
SAVEVPTR(PL_op);
#endif
+#ifdef EBCDIC
+ PL_hints = HINT_BYTE;
+#else
PL_hints = 0;
+#endif
PL_op = &dummy;
PL_op->op_type = OP_ENTEREVAL;
PL_rsfp = tryrsfp;
SAVEHINTS();
+#ifdef EBCDIC
+ PL_hints = HINT_BYTE;
+#else
PL_hints = 0;
+#endif
SAVESPTR(PL_compiling.cop_warnings);
if (PL_dowarn & G_WARN_ALL_ON)
PL_compiling.cop_warnings = pWARN_ALL ;
#define SVp_POK 0x04000000 /* has valid non-public pointer value */
#define SVp_SCREAM 0x08000000 /* has been studied? */
+#ifdef EBCDIC
+#define SVf_UTF8 0x00000000 /* SvPVX is not UTF-8 encoded */
+#else
#define SVf_UTF8 0x20000000 /* SvPVX is UTF-8 encoded */
+#endif
#define SVf_THINKFIRST (SVf_READONLY|SVf_ROK|SVf_FAKE|SVf_UTF8)
PUTBACK;
ENTER;
SAVEI32(PL_hints);
+#ifdef EBCDIC
+ PL_hints = HINT_BYTE;
+#else
PL_hints = 0;
+#endif
save_re_context();
if (PL_curcop == &PL_compiling) /* XXX ought to be handled by lex_start */
strncpy(tmpbuf, PL_tokenbuf, sizeof tmpbuf);