diff --git a/formatTest/unit_tests/expected_output/infix.re b/formatTest/unit_tests/expected_output/infix.re index f3dc5293c..30b56c949 100644 --- a/formatTest/unit_tests/expected_output/infix.re +++ b/formatTest/unit_tests/expected_output/infix.re @@ -1202,7 +1202,6 @@ let (=-) = (a, b) => a + b; let foo = (a, b) => a =- b; -<<<<<<< HEAD let (=><) = (a, b) => a + b; let x = a =>< b; @@ -1317,3 +1316,5 @@ let derefInsideArray = [|a^|]; let (=\>) = (a, b) => a + b; let x = a =\> b; + +let (=>>) = (a, b) => a + b; diff --git a/formatTest/unit_tests/input/infix.re b/formatTest/unit_tests/input/infix.re index ecf550731..8c8831c88 100644 --- a/formatTest/unit_tests/input/infix.re +++ b/formatTest/unit_tests/input/infix.re @@ -919,7 +919,6 @@ let (=-) = (a, b) => a + b; let foo = (a, b) => a =- b; -<<<<<<< HEAD let (=><) = (a, b) => a + b; let x = a =>< b; @@ -1011,3 +1010,4 @@ let (=\>) = (a, b) => a + b; let x = a =\> b; +let (=>>) = (a, b) => a + b; diff --git a/src/reason-parser/reason_lexer.mll b/src/reason-parser/reason_lexer.mll index ed028acbd..ddd9e5bf9 100644 --- a/src/reason-parser/reason_lexer.mll +++ b/src/reason-parser/reason_lexer.mll @@ -615,7 +615,7 @@ rule token = parse { INFIXOP0(lexeme_operator lexbuf) } (* `=\>` is treated especially due to conflicts with the function declaration syntax *) - | '\\'? '=' '\\'? '>' operator_chars* + | '\\'? "=\\>" { INFIXOP0(lexeme_operator lexbuf) } | '\\'? '@' operator_chars* { INFIXOP1(lexeme_operator lexbuf) }