[Fix] --define replaces SymbolRefs in LHS of assignments
See #208 for context
This commit is contained in:
@@ -2277,7 +2277,15 @@ merge(Compressor.prototype, {
|
||||
});
|
||||
|
||||
OPT(AST_SymbolRef, function(self, compressor){
|
||||
if (self.undeclared()) {
|
||||
function isLHS(symbol, parent) {
|
||||
return (
|
||||
parent instanceof AST_Binary &&
|
||||
parent.operator === '=' &&
|
||||
parent.left === symbol
|
||||
);
|
||||
}
|
||||
|
||||
if (self.undeclared() && !isLHS(self, compressor.parent())) {
|
||||
var defines = compressor.option("global_defs");
|
||||
if (defines && defines.hasOwnProperty(self.name)) {
|
||||
return make_node_from_constant(compressor, defines[self.name], self);
|
||||
|
||||
Reference in New Issue
Block a user