Bug 1655386 - Part 5: Do not set top level flags to functions. r=nbp

Depends on D85112

Differential Revision: https://phabricator.services.mozilla.com/D85113
This commit is contained in:
Tooru Fujisawa 2020-07-28 10:03:22 +00:00
Родитель b52a431c4b
Коммит ca218fe117
1 изменённых файлов: 9 добавлений и 4 удалений

Просмотреть файл

@ -322,10 +322,15 @@ bool ConvertScriptStencil(JSContext* cx, const SmooshResult& result,
options.selfHostingMode);
stencil.get().immutableFlags.setFlag(ImmutableFlags::ForceStrict,
options.forceStrictMode());
stencil.get().immutableFlags.setFlag(ImmutableFlags::NoScriptRval,
options.noScriptRval);
stencil.get().immutableFlags.setFlag(ImmutableFlags::TreatAsRunOnce,
options.isRunOnce);
stencil.get().immutableFlags.setFlag(ImmutableFlags::HasNonSyntacticScope,
options.nonSyntacticScope);
if (&smooshStencil == &result.top_level_script) {
stencil.get().immutableFlags.setFlag(ImmutableFlags::TreatAsRunOnce,
options.isRunOnce);
stencil.get().immutableFlags.setFlag(ImmutableFlags::NoScriptRval,
options.noScriptRval);
}
bool isFunction =
stencil.get().immutableFlags.hasFlag(ImmutableFlags::IsFunction);