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

UnsupportedOperationException when using variable "arguments" inside arrow function body #3376

Open
luisggpina opened this issue May 14, 2019 · 2 comments
Labels
internal-issue-created An internal Google issue has been created to track this GitHub issue triage-done Has been reviewed by someone on triage rotation.

Comments

@luisggpina
Copy link

luisggpina commented May 14, 2019

Input for SIMPLE_OPTIMIZATIONS:

a => (arguments * b)

Error output:

Exception in thread "main" java.lang.RuntimeException: INTERNAL COMPILER ERROR.
Please report this problem.

null
  Node(NAME arguments): input:1:6
a => (arguments * b)
  Parent(MUL): input:1:6
a => (arguments * b)

	at com.google.common.collect.ImmutableCollection.add(ImmutableCollection.java:222)
	at com.google.javascript.jscomp.OptimizeArgumentsArray.visit(OptimizeArgumentsArray.java:141)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:867)
	at com.google.javascript.jscomp.NodeTraversal.traverseChildren(NodeTraversal.java:979)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:863)
	at com.google.javascript.jscomp.NodeTraversal.traverseChildren(NodeTraversal.java:979)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:863)
	at com.google.javascript.jscomp.NodeTraversal.traverseChildren(NodeTraversal.java:979)
	at com.google.javascript.jscomp.NodeTraversal.traverseBlockScope(NodeTraversal.java:987)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:861)
	at com.google.javascript.jscomp.NodeTraversal.traverseFunction(NodeTraversal.java:906)
	at com.google.javascript.jscomp.NodeTraversal.handleFunction(NodeTraversal.java:816)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:842)
	at com.google.javascript.jscomp.NodeTraversal.traverseChildren(NodeTraversal.java:979)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:863)
	at com.google.javascript.jscomp.NodeTraversal.traverseChildren(NodeTraversal.java:979)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:863)
	at com.google.javascript.jscomp.NodeTraversal.traverseChildren(NodeTraversal.java:979)
	at com.google.javascript.jscomp.NodeTraversal.handleScript(NodeTraversal.java:804)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:839)
	at com.google.javascript.jscomp.NodeTraversal.traverseChildren(NodeTraversal.java:979)
	at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:863)
	at com.google.javascript.jscomp.NodeTraversal.traverse(NodeTraversal.java:371)
	at com.google.javascript.jscomp.NodeTraversal.traverse(NodeTraversal.java:381)
	at com.google.javascript.jscomp.OptimizeArgumentsArray.process(OptimizeArgumentsArray.java:98)
	at com.google.javascript.jscomp.PhaseOptimizer$NamedPass.process(PhaseOptimizer.java:328)
	at com.google.javascript.jscomp.PhaseOptimizer.process(PhaseOptimizer.java:237)
	at com.google.javascript.jscomp.Compiler.performOptimizations(Compiler.java:2380)
	at com.google.javascript.jscomp.Compiler.lambda$stage2Passes$1(Compiler.java:780)
	at com.google.javascript.jscomp.CompilerExecutor.runInCompilerThread(CompilerExecutor.java:129)
	at com.google.javascript.jscomp.Compiler.runInCompilerThread(Compiler.java:807)
	at com.google.javascript.jscomp.Compiler.stage2Passes(Compiler.java:777)
	at com.google.javascript.jscomp.Compiler.compile(Compiler.java:667)
	at com.google.javascript.jscomp.Compiler.compile(Compiler.java:634)
	at examples.CompilerTest.main(CompilerTest.java:67)
Caused by: java.lang.UnsupportedOperationException
	... 35 more

Affects: v20190415 and current master (2375110)

@EatingW
Copy link
Contributor

EatingW commented May 14, 2019

Created internal issue http://b/132717123

@EatingW EatingW added internal-issue-created An internal Google issue has been created to track this GitHub issue triage-done Has been reviewed by someone on triage rotation. labels May 14, 2019
@NotWearingPants
Copy link

Note that an arrow function scope does not define an arguments symbol, so this is a reference to a symbol in a parent scope

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
internal-issue-created An internal Google issue has been created to track this GitHub issue triage-done Has been reviewed by someone on triage rotation.
Projects
None yet
Development

No branches or pull requests

3 participants