From 4dc9b0f876c0b2ae10a3011b73b69fdecf5cf500 Mon Sep 17 00:00:00 2001 From: Ulf Norell Date: Mon, 16 Dec 2019 08:46:35 +0100 Subject: [PATCH] Parse negative literal patterns --- src/aeso_parser.erl | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/aeso_parser.erl b/src/aeso_parser.erl index 7109a46..c5f90cb 100644 --- a/src/aeso_parser.erl +++ b/src/aeso_parser.erl @@ -543,6 +543,8 @@ list_comp_e(Ann, Expr, Binds) -> {list_comp, Ann, Expr, Binds}. -spec parse_pattern(aeso_syntax:expr()) -> aeso_parse_lib:parser(aeso_syntax:pat()). parse_pattern({app, Ann, Con = {'::', _}, Es}) -> {app, Ann, Con, lists:map(fun parse_pattern/1, Es)}; +parse_pattern({app, Ann, {'-', _}, [{int, _, N}]}) -> + {int, Ann, -N}; parse_pattern({app, Ann, Con = {Tag, _, _}, Es}) when Tag == con; Tag == qcon -> {app, Ann, Con, lists:map(fun parse_pattern/1, Es)}; parse_pattern({tuple, Ann, Es}) ->