Browse Source

mark export declarations as used, to preserve side-effects (#43)

contingency-plan
Rich-Harris 10 years ago
parent
commit
f1545cbf03
  1. 4
      src/Bundle.js
  2. 1
      src/Module.js

4
src/Bundle.js

@ -418,7 +418,9 @@ export default class Bundle {
keys( statement.modifies ).forEach( name => {
const definingStatement = module.definitions[ name ];
const exportDeclaration = module.exports[ name ];
const exportDeclaration = module.exports[ name ] || (
module.exports.default && module.exports.default.identifier === name && module.exports.default
);
const shouldMark = ( definingStatement && definingStatement.isIncluded ) ||
( exportDeclaration && exportDeclaration.isUsed );

1
src/Module.js

@ -412,6 +412,7 @@ export default class Module {
});
}
exportDeclaration.isUsed = true;
return module.mark( exportDeclaration.localName );
});
}

Loading…
Cancel
Save