Not OK: perl 5.00555 on OPENSTEP-Mach-thread 4_2 (UNINSTALLED)
[p5sagit/p5-mst-13.2.git] / perly.y
diff --git a/perly.y b/perly.y
index 5c7e6f7..bef7d9a 100644 (file)
--- a/perly.y
+++ b/perly.y
@@ -42,7 +42,7 @@ dep(void)
 #endif /* !OEMVS && !__OPEN_VM && !POSIX_BC */
 
 #ifdef USE_PURE_BISON
-#define YYLEXPARAM (&yychar)
+#define YYLEX_PARAM (&yychar)
 #endif
 %}
 
@@ -304,7 +304,7 @@ startformsub:       /* NULL */      /* start a format subroutine scope */
                        { $$ = start_subparse(TRUE, 0); }
        ;
 
-subname        :       WORD    { char *name = SvPV(((SVOP*)$1)->op_sv, PL_na);
+subname        :       WORD    { STRLEN n_a; char *name = SvPV(((SVOP*)$1)->op_sv,n_a);
                          if (strEQ(name, "BEGIN") || strEQ(name, "END")
                              || strEQ(name, "INIT"))
                              CvUNIQUE_on(PL_compcv);
@@ -357,6 +357,10 @@ listop     :       LSTOP indirob argexpr
                                append_elem(OP_LIST,
                                    prepend_elem(OP_LIST, scalar($1), $5),
                                    newUNOP(OP_METHOD, 0, $3))); }
+       |       term ARROW method
+                       { $$ = convert(OP_ENTERSUB, OPf_STACKED,
+                               append_elem(OP_LIST, scalar($1),
+                                   newUNOP(OP_METHOD, 0, $3))); }
        |       METHOD indirob listexpr
                        { $$ = convert(OP_ENTERSUB, OPf_STACKED,
                                append_elem(OP_LIST,