summaryrefslogtreecommitdiffstats
path: root/parser.y
diff options
context:
space:
mode:
Diffstat (limited to 'parser.y')
-rw-r--r--parser.y13
1 files changed, 8 insertions, 5 deletions
diff --git a/parser.y b/parser.y
index 396d097f..b1540c90 100644
--- a/parser.y
+++ b/parser.y
@@ -730,12 +730,15 @@ exprs_opt : exprs { $$ = $1; }
;
n_exprs : n_expr { $$ = rlcp(cons($1, nil), $1); }
- | n_expr n_exprs { $$ = rlcp(cons($1, $2), $1); }
- | n_expr '.' n_expr { $$ = rlcp(cons($1, $3), $1); }
- | n_expr DOTDOT n_exprs { $$ = rlcp(cons(list(cons_s, $1,
+ | n_expr n_exprs { uses_or2;
+ $$ = rlcp(cons($1, $2), or2($1, $2)); }
+ | n_expr '.' n_expr { uses_or2;
+ $$ = rlcp(cons($1, $3), or2($1, $3)); }
+ | n_expr DOTDOT n_exprs { uses_or2;
+ $$ = rlcp(cons(list(cons_s, $1,
car($3), nao),
- cdr($3)), $1); }
- ;
+ cdr($3)), or2($1, $3)); }
+ ;
n_expr : SYMTOK { $$ = sym_helper($1, t); }
| METANUM { $$ = cons(var_s, cons($1, nil));