Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Treeshaking removes valid labels #5292

Closed
jchavarri opened this issue Dec 9, 2023 · 2 comments · Fixed by #5297
Closed

Treeshaking removes valid labels #5292

jchavarri opened this issue Dec 9, 2023 · 2 comments · Fixed by #5297
Assignees

Comments

@jchavarri
Copy link

Rollup Version

v4.7.0

Operating System (or Browser)

Linux and Browser

Node Version (if applicable)

No response

Link To Reproduction

https://rollupjs.org/repl/?version=4.7.0&shareable=JTdCJTIyZXhhbXBsZSUyMiUzQW51bGwlMkMlMjJtb2R1bGVzJTIyJTNBJTVCJTdCJTIyY29kZSUyMiUzQSUyMmZ1bmN0aW9uJTIwcShnJTJDJTIwYiklMjAlN0IlNUNuJTIwJTIwdmFyJTIwYSUyMCUzRCUyMGIlNUIxJTVEJTNCJTVDbiUyMCUyMGIlM0ElMjBpZiUyMCh0eXBlb2YlMjBhJTIwISUzRCUzRCUyMCU1QyUyMm51bWJlciU1QyUyMiklNUNuJTIwJTIwJTIwJTIwc3dpdGNoJTIwKGElNUIwJTVEKSUyMCU3QiU1Q24lMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwNyUzQSU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YXIlMjBxJTIwJTNEJTIwYSU1QjIlNUQlMkMlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwciUyMCUzRCUyMGElNUIxJTVEJTJDJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHQlMjAlM0QlMjBiUyhyJTJDJTIwZnVuY3Rpb24lMjAoYSklMjAlN0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFyJTIwYyUyMCUzRCUyMGElNUIzJTVEJTJDJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGQlMjAlM0QlMjBhJTVCMiU1RCUyQyU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBiJTIwJTNEJTIwYSU1QjElNUQlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYiUzQSUyMGlmJTIwKGMpJTIwJTdCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhciUyMGglMjAlM0QlMjBjJTVCMSU1RCUyQyU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBlJTIwJTNEJTIwaCU1QjElNUQlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAodHlwZW9mJTIwZSUyMCElM0QlM0QlMjAlNUMlMjJudW1iZXIlNUMlMjIpJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHN3aXRjaCUyMChlJTVCMCU1RCklMjAlN0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMDAlM0ElNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoaCU1QjQlNUQpJTIwYnJlYWslMjBiJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKHRwKGIlNUIxJTVEJTJDJTIwJTVCMCUyQyUyMGUlNUIxJTVEJTVCMSU1RCU1RCkpJTIwcmV0dXJuJTIwJTVCMCUyQyUyMGIlMkMlMjBkJTJDJTIwMCU1RCUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBicmVhayUyMGIlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMDExJTNBJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGQpJTIwYnJlYWslMjBiJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhciUyMGklMjAlM0QlMjBjJTVCMSU1RCUyQyU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBrJTIwJTNEJTIwaSU1QjElNUQlMkMlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbCUyMCUzRCUyMGslNUIxJTVEJTJDJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGYlMjAlM0QlMjBsJTVCMSU1RCUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCh0eXBlb2YlMjBmJTIwISUzRCUzRCUyMCU1QyUyMm51bWJlciU1QyUyMiUyMCUyNiUyNiUyMDAlMjAlM0QlM0QlM0QlMjBmJTVCMCU1RCklMjAlN0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobCU1QjQlNUQpJTIwYnJlYWslMjBiJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKGklNUI0JTVEKSUyMGJyZWFrJTIwYiUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YXIlMjBtJTIwJTNEJTIwayU1QjIlNUQlMkMlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbiUyMCUzRCUyMGYlNUIxJTVEJTVCMSU1RCUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChqJTIwJTI2JTI2JTIwdHAoYiU1QjElNUQlMkMlMjAlNUIwJTJDJTIwbiU1RCkpJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCU1QjAlMkMlMjBiJTJDJTIwJTVCMCUyQyUyMG0lNUQlMkMlMjAwJTVEJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJyZWFrJTIwYiUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwYnJlYWslMjBiJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcmV0dXJuJTIwJTVCMCUyQyUyMGIlMkMlMjBkJTJDJTIwbyhlUiUyQyUyMGMlMkMlMjBwKGclNUIzMyU1RCUyQyUyMGcpKSU1RCUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QpJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCU1QjAlMkMlMjAlNUI3JTJDJTIwdCUyQyUyMHElNUQlMkMlMjBiJTVCMiU1RCUyQyUyMGIlNUIzJTVEJTJDJTIwYiU1QjQlNUQlNUQlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwY2FzZSUyMDExJTNBJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhciUyMGglMjAlM0QlMjBhJTVCMSU1RCUyQyU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBjJTIwJTNEJTIwaCU1QjElNUQlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAodHlwZW9mJTIwYyUyMCElM0QlM0QlMjAlNUMlMjJudW1iZXIlNUMlMjIlMjAlMjYlMjYlMjAxNCUyMCUzRCUzRCUzRCUyMGMlNUIwJTVEKSUyMCU3QiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChjJTVCMiU1RCklMjBicmVhayUyMGIlM0IlMjAlMkYqJTIwJTNDLS0tJTIwZXJyb3IlMjB0cmlnZ2VyZWQlMjBoZXJlJTIwKiUyRiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChoJTVCNCU1RCklMjBicmVhayUyMGIlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFyJTIwaSUyMCUzRCUyMGElNUIyJTVEJTJDJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGYlMjAlM0QlMjBpJTVCMSU1RCUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCh0eXBlb2YlMjBmJTIwISUzRCUzRCUyMCU1QyUyMm51bWJlciU1QyUyMiUyMCUyNiUyNiUyMDklMjAlM0QlM0QlM0QlMjBmJTVCMCU1RCklMjAlN0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoaSU1QjQlNUQpJTIwYnJlYWslMjBiJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHJldHVybiUyMCU1QjAlMkMlMjAlNUIxNCUyQyUyMGMlNUIxJTVEJTJDJTIwJTVCMCUyQyUyMGYlNUIxJTVEJTVEJTVEJTJDJTIwYiU1QjIlNUQlMkMlMjBiJTVCMyU1RCUyQyUyMGIlNUI0JTVEJTVEJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBicmVhayUyMGIlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJyZWFrJTIwYiUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjBjYXNlJTIwMTglM0ElNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFyJTIwZCUyMCUzRCUyMGElNUIxJTVEJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFkKSUyMGJyZWFrJTIwYiUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YXIlMjBrJTIwJTNEJTIwZCU1QjIlNUQlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAoIWspJTIwYnJlYWslMjBiJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFrJTVCMiU1RCklMjBicmVhayUyMGIlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFyJTIwbCUyMCUzRCUyMGRtKGQpJTJDJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGUlMjAlM0QlMjBsJTVCMSU1RCUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBkJTNBJTIwJTdCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGUlM0ElMjBpZiUyMCh0eXBlb2YlMjBlJTIwISUzRCUzRCUyMCU1QyUyMm51bWJlciU1QyUyMiUyMCUyNiUyNiUyMDUlMjAlM0QlM0QlM0QlMjBlJTVCMCU1RCklMjAlN0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFyJTIwbiUyMCUzRCUyMGUlNUIxJTVEJTVCMSU1RCUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMCgwJTIwISUzRCUzRCUyMG4lNUIwJTVEKSUyMGJyZWFrJTIwZSUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChzKG4lNUIxJTVEJTJDJTIwZDEpKSUyMGJyZWFrJTIwZSUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBpZiUyMChlJTVCMiU1RCklMjBicmVhayUyMGUlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaWYlMjAobCU1QjQlNUQpJTIwYnJlYWslMjBlJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHZhciUyMG0lMjAlM0QlMjAxJTNCJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGJyZWFrJTIwZCUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdmFyJTIwbSUyMCUzRCUyMDAlM0IlNUNuJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTVDbiUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGlmJTIwKCFtKSUyMGJyZWFrJTIwYiUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB2YXIlMjB1JTIwJTNEJTIwYjYobzgoYjYoZCkpKSUzQiU1Q24lMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjByZXR1cm4lMjAlNUIwJTJDJTIwJTVCOSUyQyUyMHUlNUQlMkMlMjBiJTVCMiU1RCUyQyUyMGIlNUIzJTVEJTJDJTIwYiU1QjQlNUQlNUQlM0IlNUNuJTIwJTIwJTIwJTIwJTdEJTVDbiUyMCUyMHJldHVybiUyMENzKGclMkMlMjBiKSUzQiU1Q24lN0QlNUNucSgxJTJDJTIwMiklMjIlMkMlMjJpc0VudHJ5JTIyJTNBdHJ1ZSUyQyUyMm5hbWUlMjIlM0ElMjJtYWluLmpzJTIyJTdEJTJDJTdCJTIyY29kZSUyMiUzQSUyMiUyMiUyQyUyMmlzRW50cnklMjIlM0FmYWxzZSUyQyUyMm5hbWUlMjIlM0ElMjJtYXRocy5qcyUyMiU3RCU1RCUyQyUyMm9wdGlvbnMlMjIlM0ElN0IlMjJvdXRwdXQlMjIlM0ElN0IlMjJmb3JtYXQlMjIlM0ElMjJjanMlMjIlN0QlMkMlMjJ0cmVlc2hha2UlMjIlM0F0cnVlJTdEJTdE

Expected Behaviour

Treeshaking should not remove well-defined labels that are used by some code.

Actual Behaviour

In the REPL example, when selecting treeshaking true, the label b in line 5 disappears:

function q(g, b) {
  var a = b[1];
  if (typeof a !== "number")

Disabling treeshaking leaves the label in place:

function q(g, b) {
  var a = b[1];
  b: if (typeof a !== "number")
Copy link

This issue has been resolved via #5297 as part of rollup@4.9.1. You can test it via npm install rollup.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants