google / google/closure-compiler

NullPointerException when inlining literals in dead code

Open
#3,381 3 comments 0 reactions 0 assignees View on GitHub
internal-issue-created triage-done
Dominant language
JavaScript
Stars
7.7k
Forks
1.2k
Avg merge
2d 12h
Merged PRs (30d)
6

Description

Input for `SIMPLE_OPTIMIZATIONS`:

```
() => { for(;;){ try { break } catch (a) { { function a(){ } } } } }
```

Error output:

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

null
Node(FOR): /tmp/tmp.3UFtSmPHso:1:8
() => { for(;;){ try { break } catch (a) { { function a(){ } } } } }
Parent(BLOCK): /tmp/tmp.3UFtSmPHso:1:6
() => { for(;;){ try { break } catch (a) { { function a(){ } } } } }

at com.google.javascript.jscomp.InlineObjectLiterals$InliningBehavior.afterExitScope(InlineObjectLiterals.java:91)
at com.google.javascript.jscomp.ReferenceCollectingCallback.exitScope(ReferenceCollectingCallback.java:264)
at com.google.javascript.jscomp.NodeTraversal.popScope(NodeTraversal.java:1045)
at com.google.javascript.jscomp.NodeTraversal.popScope(NodeTraversal.java:1036)
at com.google.javascript.jscomp.NodeTraversal.traverseBlockScope(NodeTraversal.java:988)
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.traverseRoots(NodeTraversal.java:401)
at com.google.javascript.jscomp.ReferenceCollectingCallback.process(ReferenceCollectingCallback.java:113)
at com.google.javascript.jscomp.InlineObjectLiterals.process(InlineObjectLiterals.java:66)
at com.google.javascript.jscomp.PhaseOptimizer$NamedPass.process(PhaseOptimizer.java:328)
at com.google.javascript.jscomp.PhaseOptimizer$Loop.process(PhaseOptimizer.java:473)
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.NullPointerException
... 32 more
```

Affects: v20190415 and current master (2375110b30ccb83b0a550c8c3d46c526e3896d62)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.