diff options
Diffstat (limited to 'parsing/parser.mly')
-rw-r--r-- | parsing/parser.mly | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/parsing/parser.mly b/parsing/parser.mly index eeac89256..6f5fae6d7 100644 --- a/parsing/parser.mly +++ b/parsing/parser.mly @@ -257,10 +257,10 @@ structure_tail: | structure_item structure_tail { $1 :: $2 } ; structure_item: - LET UNDERSCORE EQUAL expr - { mkstr(Pstr_eval $4) } - | LET rec_flag let_bindings - { mkstr(Pstr_value($2, List.rev $3)) } + LET rec_flag let_bindings + { match $3 with + [{ppat_desc = Ppat_any}, exp] -> mkstr(Pstr_eval exp) + | _ -> mkstr(Pstr_value($2, List.rev $3)) } | EXTERNAL val_ident COLON core_type EQUAL primitive_declaration { mkstr(Pstr_primitive($2, {pval_type = $4; pval_prim = $6})) } | TYPE type_declarations |