Trying to figure a way to do this:

If hasParameterExpressions is false:
  1. keep doing things the way they're already working, I guess?

else:
   1. for each bound name of parameters, allocate space (on heap or stack)
initialized to the hole
   2. for each parameter:
     a. if it's a "normal" parameter (no expressions), set the allocated
variable to the one passed on the stack
b. else if it's an optional parameter, set the allocated variable to the
evaluation of the initializing expression
     c. else if it's a binding pattern parameter, perform step 2 for each
binding property/element of the binding pattern

   Constraints:
- All references to the bound names of parameters need to refer to thees
variables initialized to the hole.
     - Within the function body, no hole-check is needed to reference one of
these names
     - Redeclaring one of these names using "var" should be legal
- These allocated variables need to be reference-able from step 2 in the
algorithm above, but also from the
function and its child scopes. However, the expressions in step 2 may not
reference any variables declared
       within the function or its nested scopes

Just thinking out loud, not totally sure how else the TDZ semantics would work

https://codereview.chromium.org/1053773006/

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to