Do not create invalid code when simplifying object pattern assignments #4204
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains:
Are tests included?
Breaking Changes?
List any relevant issue numbers:
Description
When simplifying statements that include object pattern assignments, we need to add parentheses when the assignment would end up as an expression statement or arrow function return value. https://rollupjs.org/repl/?version=2.56.1&shareable=JTdCJTIybW9kdWxlcyUyMiUzQSU1QiU3QiUyMm5hbWUlMjIlM0ElMjJtYWluLmpzJTIyJTJDJTIyY29kZSUyMiUzQSUyMmxldCUyMGZvbyUyQyUyMHVudXNlZCUzQiU1Q24lMkYlMkYlMjBUaGUlMjBsZWFkaW5nJTIwJTVDJTIyJTdCJTVDJTIyJTIwd2lsbCUyMGJlJTIwbWlzaW50ZXJwcmV0ZWQlMjBhcyUyMGElMjBibG9jayUyMHN0YXRlbWVudCU1Q25udWxsJTJDJTIwJTdCJTIwZm9vJTIwJTdEJTIwJTNEJTIwJTdCJTIwZm9vJTNBJTIwJ2JhciclMjAlN0QlM0IlNUNuYXNzZXJ0LnN0cmljdEVxdWFsKGZvbyUyQyUyMCdiYXInKSUzQiU1Q24lNUNuJTJGJTJGJTIwQWdhaW4lMkMlMjB0aGUlMjBsZWFkaW5nJTIwJTVDJTIyJTdCJTVDJTIyJTIwd2lsbCUyMGJlJTIwbWlzaW50ZXJwcmV0ZWQlMjBhcyUyMGElMjBibG9jayUyMHN0YXRlbWVudCU1Q25jb25zdCUyMGFzc2lnbiUyMCUzRCUyMCgpJTIwJTNEJTNFJTIwdW51c2VkJTIwJTNEJTIwJTdCJTIwZm9vJTIwJTdEJTIwJTNEJTIwJTdCJTIwZm9vJTNBJTIwJ2JheiclMjAlN0QlM0IlNUNuYXNzaWduKCklM0IlNUNuYXNzZXJ0LnN0cmljdEVxdWFsKGZvbyUyQyUyMCdiYXonKSUzQiU1Q24lMjIlMkMlMjJpc0VudHJ5JTIyJTNBdHJ1ZSU3RCU1RCUyQyUyMm9wdGlvbnMlMjIlM0ElN0IlMjJmb3JtYXQlMjIlM0ElMjJlcyUyMiUyQyUyMm5hbWUlMjIlM0ElMjJteUJ1bmRsZSUyMiUyQyUyMmFtZCUyMiUzQSU3QiUyMmlkJTIyJTNBJTIyJTIyJTdEJTJDJTIyZ2xvYmFscyUyMiUzQSU3QiU3RCU3RCUyQyUyMmV4YW1wbGUlMjIlM0FudWxsJTdE
Fixed: https://rollupjs.org/repl/?pr=4204&shareable=JTdCJTIybW9kdWxlcyUyMiUzQSU1QiU3QiUyMm5hbWUlMjIlM0ElMjJtYWluLmpzJTIyJTJDJTIyY29kZSUyMiUzQSUyMmxldCUyMGZvbyUyQyUyMHVudXNlZCUzQiU1Q25udWxsJTJDJTIwJTdCJTIwZm9vJTIwJTdEJTIwJTNEJTIwJTdCJTIwZm9vJTNBJTIwJ2JhciclMjAlN0QlM0IlNUNuYXNzZXJ0LnN0cmljdEVxdWFsKGZvbyUyQyUyMCdiYXInKSUzQiU1Q24lNUNuY29uc3QlMjBhc3NpZ24lMjAlM0QlMjAoKSUyMCUzRCUzRSUyMHVudXNlZCUyMCUzRCUyMCU3QiUyMGZvbyUyMCU3RCUyMCUzRCUyMCU3QiUyMGZvbyUzQSUyMCdiYXonJTIwJTdEJTNCJTVDbmFzc2lnbigpJTNCJTVDbmFzc2VydC5zdHJpY3RFcXVhbChmb28lMkMlMjAnYmF6JyklM0IlNUNuJTIyJTJDJTIyaXNFbnRyeSUyMiUzQXRydWUlN0QlNUQlMkMlMjJvcHRpb25zJTIyJTNBJTdCJTIyZm9ybWF0JTIyJTNBJTIyZXMlMjIlMkMlMjJuYW1lJTIyJTNBJTIybXlCdW5kbGUlMjIlMkMlMjJhbWQlMjIlM0ElN0IlMjJpZCUyMiUzQSUyMiUyMiU3RCUyQyUyMmdsb2JhbHMlMjIlM0ElN0IlN0QlN0QlMkMlMjJleGFtcGxlJTIyJTNBbnVsbCU3RA==