Example:
match a
| _.isString => 1
| (_.isString) => 1
Result:
var ref$;
switch (ref$ = [a], false) {
case !true:
1;
break;
case !_.isString(ref$[0]):
1;
}
Expected result:
var ref$;
switch (ref$ = [a], false) {
case !_.isString(ref$[0]):
1;
break;
case !_.isString(ref$[0]):
1;
}
The example shows, that wrapping the expression in parentheses is enough to bypass this bug.