});
def(AST_SymbolRef, function(){
var d = this.definition();
- if (d && d.constant) {
- var orig = d.orig[0];
- if (orig) orig = orig.init[0];
- orig = orig && orig.value;
- if (orig) return ev(orig);
- }
+ if (d && d.constant && d.init) return ev(d.init);
throw def;
});
})(function(node, func){
|| node instanceof AST_SymbolConst) {
var def = scope.def_variable(node);
def.constant = node instanceof AST_SymbolConst;
- def = tw.parent();
+ def.init = tw.parent().value;
}
else if (node instanceof AST_SymbolCatch) {
// XXX: this is wrong according to ECMA-262 (12.4). the