```dart void main() {if([]==[]);} // ERROR at first `[]` ``` Results in parsing errors from both `dart run`and analysis when editing in VS Code. Parenthesizing works - for example ```dart void main() {if(([])==[]);} // OK ``` Seems to have something to do with operators: ```dart if([]+[]==[]); // ERROR at `[]+[]` ``` I would expect it to work without parenthesizing, just like a member access or invocation ```dart void main() { if([].reversed=={}); // OK } ``` Thoughts?