On Wed, Jul 23, 2014 at 8:08 AM, <verwa...@chromium.org> wrote:

> My comment below is based on a short explanation of the problem by
> rossberg. Let
> me know if some things are still unclear.
>
> Overall: Please don't work around "bugs" (wasn't really a bug until
> unscopable
> since it wasn't observable in any way) in one part of the system by
> obfuscating
> another part.
>
>
> https://codereview.chromium.org/384963002/diff/120001/src/objects.cc
> File src/objects.cc (right):
>
> https://codereview.chromium.org/384963002/diff/120001/src/
> objects.cc#newcode165
> src/objects.cc:165: }
> Euh, no.
>
> What you want to do is fix a bug in Array.length; but what you do
> instead is modify get-property to change the semantics of all API
> accessors...
>
> The right fix is to change ArrayLengthGetter to not use This() (via
> GetThisFrom), but rather read the value from the Holder(). That also
> removes the need for FindInstanceOf.


I'm happy to hear that you do not think this work around is the right
approach.

I think I might still be a bit confused.

I was under the impression that this was not a one off bug but a conceptual
problem with API accessors. If that is not the case I'm happy to comment
out the failing tests and then fix the one off bugs (ArrayLengthGetter and
others).

I thought the issue was that `holder[[Get]](name, receiver)` for an API
accessor always get the actual value from the receiver? Looking at
accessors.cc, it seems that almost all of these callbacks use `info.This()`
so all of them should be updated?





>
>
> https://codereview.chromium.org/384963002/
>
> --
> --
> v8-dev mailing list
> v8-dev@googlegroups.com
> 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 v8-dev+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>



-- 
erik

-- 
-- 
v8-dev mailing list
v8-dev@googlegroups.com
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 v8-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to