Open
Description
java.lang.RuntimeException: INTERNAL COMPILER ERROR.
Please email [email protected] with this stack trace and repro steps (a CL# and a build target).
Unexpected variable Symbol
Node(NAME Symbol): [synthetic:2] :34:2
Symbol = $jscomp.global.Symbol || {};
Parent(ASSIGN): [synthetic:2] :34:2
Symbol = $jscomp.global.Symbol || {};
at com.google.javascript.jscomp.VarCheck.visit(VarCheck.java:202)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:607)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:601)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:601)
at com.google.javascript.jscomp.NodeTraversal.traverseBlockScope(NodeTraversal.java:650)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:595)
at com.google.javascript.jscomp.NodeTraversal.traverseFunction(NodeTraversal.java:641)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:593)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:601)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:601)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:601)
at com.google.javascript.jscomp.NodeTraversal.traverseBranch(NodeTraversal.java:601)
at com.google.javascript.jscomp.NodeTraversal.traverseRoots(NodeTraversal.java:318)
at com.google.javascript.jscomp.VarCheck.process(VarCheck.java:142)
at com.google.javascript.jscomp.PhaseOptimizer$NamedPass.process(PhaseOptimizer.java:285)
at com.google.javascript.jscomp.PhaseOptimizer.process(PhaseOptimizer.java:217)
at com.google.javascript.jscomp.Compiler.optimize(Compiler.java:1912)
at com.google.javascript.jscomp.Compiler.compileInternal(Compiler.java:692)
Externs
/**
* @type {Object}
* @const
*/
var React = {};
/**
* @constructor
*/
React.Component = function() {};
/**
* @param {string} module
* @return {*}
*/
var require = function(module) { return {}; };
Code
goog.module("test");
let React = /** @type {React} */(require("React"));
class MyClass extends React.Component {
}
exports = MyClass;
See discussion:
https://groups.google.com/forum/#!topic/closure-compiler-discuss/-r7XK8j5yfA
When I run it locally I don't get this crash, instead I get:
WARNING - Misplaced type annotation. Type annotations are not allowed here. Are you missing parentheses?