void JSFunction::addNameScopeIfNeeded(VM& vm) { FunctionExecutable* executable = jsCast<FunctionExecutable*>(m_executable.get()); if (!functionNameIsInScope(executable->name(), executable->functionMode())) return; if (!functionNameScopeIsDynamic(executable->usesEval(), executable->isStrictMode())) return; m_scope.set(vm, this, JSNameScope::create(vm, m_scope->globalObject(), executable->name(), this, ReadOnly | DontDelete, m_scope.get())); }