PTAL. There was a bug in the handling of intercepted indexed properties and the prototype chain, that a cctest uncovered. Unfortunately, the proper fix required
implementing yet more functionality.

https://chromiumcodereview.appspot.com/11365111/diff/1/src/elements.cc
File src/elements.cc (right):

https://chromiumcodereview.appspot.com/11365111/diff/1/src/elements.cc#newcode585
src/elements.cc:585: ? NONE : ABSENT;
That was wrong.

https://chromiumcodereview.appspot.com/11365111/diff/1/src/elements.cc#newcode1472
src/elements.cc:1472: if (entry != SeededNumberDictionary::kNotFound)
On 2012/11/07 11:47:48, Michael Starzinger wrote:
Curly brackets around body.

Done.

https://chromiumcodereview.appspot.com/11365111/diff/1/src/elements.cc#newcode1545
src/elements.cc:1545: Object* probe = key < (length - 2) ?
parameter_map->get(key + 2) : NULL;
On 2012/11/07 11:47:48, Michael Starzinger wrote:
Better use the GetParameterMapArg() helper for that to not duplicate
this magic
throughout the code.

Done.

https://chromiumcodereview.appspot.com/11365111/diff/1/src/elements.cc#newcode1549
src/elements.cc:1549: if (arguments->IsDictionary()) {
On 2012/11/07 11:47:48, Michael Starzinger wrote:
Better delegate to the elements accessor for the underlying backing
store.

Done.

https://chromiumcodereview.appspot.com/11365111/diff/1/src/objects.cc
File src/objects.cc (right):

https://chromiumcodereview.appspot.com/11365111/diff/1/src/objects.cc#newcode4074
src/objects.cc:4074: if (self->HasIndexedInterceptor()) {
On 2012/11/07 10:06:52, Toon Verwaest wrote:
Maybe use (self->HasIndexedInterceptor() && mode != FORCE_DELETION) to
reduce
the number of paths. There is no need to set the mode to
FORCE_DELETION if it is
already FORCE_DELETION.

Otherwise put { } around if/else branches.

Done.

https://chromiumcodereview.appspot.com/11365111/diff/1/src/objects.cc#newcode10230
src/objects.cc:10230: MaybeObject* result = *value;
On 2012/11/07 10:06:52, Toon Verwaest wrote:
This initialization seems superfluous since it's overwritten directly
afterwards.

Done.

https://chromiumcodereview.appspot.com/11365111/

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to