Justin Ridgewell b1a589f0aa
Fix printing edge cases in Nullish Coalescing and Optional Ch… (#11255)
This is a mix of changes, most importantly:

- Always print parens when mixing nullish coalescing and another logical
- Fixes assignment in the callee of an optional chain, which now blocks #11248

Also, cleans up a bit of code, and removes an unnecessary parens around `class A extends new B {}`
2020-03-13 16:35:28 +01:00

18 lines
205 B
JavaScript

const foo = 'test'
console.log((foo ?? '') == '')
a ?? (b ?? c);
(a ?? b) ?? c;
a ?? (b || c);
a || (b ?? c);
(a ?? b) || c;
(a || b) ?? c;
a ?? (b && c);
a && (b ?? c);
(a ?? b) && c;
(a && b) ?? c;