IdentifierSet capturedVariables;
UniquedStringImplPtrSet sloppyModeHoistedFunctions;
- bool modifiedParameter = false;
- bool modifiedArguments = false;
scope->getSloppyModeHoistedFunctions(sloppyModeHoistedFunctions);
- scope->getCapturedVars(capturedVariables, modifiedParameter, modifiedArguments);
+ scope->getCapturedVars(capturedVariables);
VariableEnvironment& varDeclarations = scope->declaredVariables();
for (auto& entry : capturedVariables)
features |= StrictModeFeature;
if (scope->shadowsArguments())
features |= ShadowsArgumentsFeature;
- if (modifiedParameter)
- features |= ModifiedParameterFeature;
- if (modifiedArguments)
- features |= ModifiedArgumentsFeature;
#ifndef NDEBUG
if (m_parsingBuiltin && isProgramParseMode(parseMode)) {
if (strictMode() && m_parserState.lastIdentifier && context.isResolve(lhs)) {
failIfTrueIfStrict(m_vm->propertyNames->eval == *m_parserState.lastIdentifier, "Cannot modify 'eval' in strict mode");
failIfTrueIfStrict(m_vm->propertyNames->arguments == *m_parserState.lastIdentifier, "Cannot modify 'arguments' in strict mode");
- declareWrite(m_parserState.lastIdentifier);
m_parserState.lastIdentifier = 0;
}
lhs = parseAssignmentExpression(context);