diff --git a/src/syntax/parser.ml b/src/syntax/parser.ml index d0686b28caa..e806d038c15 100644 --- a/src/syntax/parser.ml +++ b/src/syntax/parser.ml @@ -270,8 +270,8 @@ let precedence op = | OpEq | OpNotEq | OpGt | OpLt | OpGte | OpLte -> 6, left | OpInterval -> 7, left | OpBoolAnd -> 8, left - | OpBoolOr -> 9, left - | OpArrow | OpNullCoal -> 10, right + | OpBoolOr | OpNullCoal -> 9, left + | OpArrow -> 10, right | OpAssign | OpAssignOp _ -> 11, right let is_higher_than_ternary = function diff --git a/tests/unit/src/unit/issues/Issue11144.hx b/tests/unit/src/unit/issues/Issue11144.hx new file mode 100644 index 00000000000..a17d218b49d --- /dev/null +++ b/tests/unit/src/unit/issues/Issue11144.hx @@ -0,0 +1,8 @@ +package unit.issues; + +class Issue11144 extends Test { + function test() { + t(false ?? false || true); // false + t((false ?? false) || true); // true + } +}