[Webkit-unassigned] [Bug 163208] [ES6]. Implement Annex B.3.3 function hoisting rules for eval
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Jan 26 10:40:38 PST 2017
https://bugs.webkit.org/show_bug.cgi?id=163208
--- Comment #28 from Geoffrey Garen <ggaren at apple.com> ---
Comment on attachment 299744
--> https://bugs.webkit.org/attachment.cgi?id=299744
Patch
View in context: https://bugs.webkit.org/attachment.cgi?id=299744&action=review
> Source/JavaScriptCore/ChangeLog:19
> + op_is_scope_var_type - check if scope with variable is function scope
Let's call this op_is_var_scope.
I don't understand your explanation "check if scope with variable is function scope", but since op_resolve_closest_or_var_scope names something a "var scope", I'm inferring that this check applies to the same thing.
> Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h:697
> + RegisterID* emitResolveOuterVarScope(RegisterID* dst, const Identifier&);
It is bad that this function name does not match the name of the bytecode it emits.
> Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h:698
> + RegisterID* emitCheckIfScopeIsVarType(RegisterID* dst, RegisterID* scope);
Same comment here.
> Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h:699
> + RegisterID* emitPutToOuterScope(RegisterID* scope, const Identifier&, RegisterID* value, ResolveMode, InitializationMode);
How is emitPutToOuterScope different from emitPutToScope?
> Source/JavaScriptCore/runtime/CommonSlowPaths.cpp:814
> +SLOW_PATH_DECL(slow_path_resolve_closest_var_scope)
You forgot the word "or" in this name, which changes its meaning significantly.
> Source/JavaScriptCore/runtime/JSScope.cpp:220
> +ALWAYS_INLINE JSObject* JSScope::baseResolve(ExecState* exec, JSScope* scope, const Identifier& ident, FinishResolveEarlierFunctor finishResolveEarlier)
There's no need to use a different function name here. You can call this resolve.
> Source/JavaScriptCore/runtime/JSScope.cpp:256
> + if (finishResolveEarlier(scope))
I would call this 'accept' or 'predicate'.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170126/e922e6e0/attachment.html>
More information about the webkit-unassigned
mailing list