-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Open
Description
From https://stackoverflow.com/a/960870 I randomly stumbled to using [].slice.call(arguments) to convert the old arguments object to an array (for use in scenarios where ES6 constructs are not allowed).
Though then got to see Closure compiler croak in that construct:
null
Node(NAME arguments): C:/Users/clb/AppData/Local/Temp/emscripten_temp_9jd6b43i/a.out.jso1.js:158:31
var args = [].slice.call(arguments);
Parent(CALL): C:/Users/clb/AppData/Local/Temp/emscripten_temp_9jd6b43i/a.out.jso1.js:158:17
var args = [].slice.call(arguments);
at com.google.javascript.jscomp.Compiler.throwInternalError(Compiler.java:3282)
at com.google.javascript.jscomp.NodeTraversal.throwUnexpectedException(NodeTraversal.java:516)
at com.google.javascript.jscomp.NodeTraversal.traverse(NodeTraversal.java:536)
at com.google.javascript.jscomp.NodeTraversal$Builder.traverse(NodeTraversal.java:472)
at com.google.javascript.jscomp.NodeTraversal.traverse(NodeTraversal.java:542)
at com.google.javascript.jscomp.OptimizeArgumentsArray.process(OptimizeArgumentsArray.java:98)
at com.google.javascript.jscomp.PhaseOptimizer$NamedPass.process(PhaseOptimizer.java:240)
at com.google.javascript.jscomp.PhaseOptimizer.process(PhaseOptimizer.java:179)
at com.google.javascript.jscomp.Compiler.performTranspilationAndOptimizations(Compiler.java:2968)
at com.google.javascript.jscomp.Compiler.lambda$stage2Passes$7(Compiler.java:1025)
at com.google.javascript.jscomp.CompilerExecutor.lambda$runInCompilerThread$0(CompilerExecutor.java:100)
at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at [email protected]/java.lang.Thread.run(Thread.java:833)
at org.graalvm.nativeimage.builder/com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:775)
at org.graalvm.nativeimage.builder/com.oracle.svm.core.windows.WindowsPlatformThreads.osThreadStartRoutine(WindowsPlatformThreads.java:178)
Caused by: java.lang.UnsupportedOperationException
at com.google.common.collect.ImmutableCollection.add(ImmutableCollection.java:268)
at com.google.javascript.jscomp.OptimizeArgumentsArray.visit(OptimizeArgumentsArray.java:141)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:961)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseFunction(NodeTraversal.java:1006)
at com.google.javascript.jscomp.NodeTraversal.handleFunction(NodeTraversal.java:857)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:903)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverseChildren(NodeTraversal.java:1134)
at com.google.javascript.jscomp.NodeTraversal.handleScript(NodeTraversal.java:845)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:900)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:951)
at com.google.javascript.jscomp.NodeTraversal.traverse(NodeTraversal.java:533)
... 14 more
Metadata
Metadata
Assignees
Labels
No labels