# ifndef PL_lex_inwhat
# define PL_lex_inwhat PL_parser->lex_inwhat
# endif
+# ifndef PL_multi_close
+# define PL_multi_close PL_parser->multi_close
+# endif
#else
# ifndef PL_linestr
# define PL_linestr PL_Ilinestr
# ifndef PL_lex_inwhat
# define PL_lex_inwhat PL_Ilex_inwhat
# endif
+# ifndef PL_multi_close
+# define PL_multi_close PL_Imulti_close
+# endif
#endif
/* ... Safe version of call_sv() ........................................... */
if (SvPOK(sv) && (SvTYPE(sv) >= SVt_PV)) {
STRLEN pos;
+ const char *bufptr;
+
+ bufptr = PL_multi_close == '<' ? PL_bufptr : PL_oldbufptr;
- if (indirect_find(sv, PL_oldbufptr, &pos)) {
+ if (indirect_find(sv, bufptr, &pos)) {
STRLEN len;
/* If the constant is equal to the current package name, try to look for