Comment #2 on issue 4317 by [email protected]: @@isConcatSpreadable is ignored by Array.prototype.concat when the arguments are arrays
https://code.google.com/p/v8/issues/detail?id=4317

In this version of Chrome, @@isConcatSpreadable is unshipped due to a bug found with it (see https://code.google.com/p/v8/issues/detail?id=4289). It can be turned on with --es_staging or --harmony_concat_spreadable, which can be passed into Chrome as --js_flags=--harmony_concat_spreadable.

With the flag off, Symbol.isConcatSpreadable is undefined. JavaScript's implicit conversions will take care of the rest for you to make this error silent and difficult to debug!

8> b = {}
{}
d8> b[Symbol.isConcatSpreadable] = false;
false
d8> b
{undefined: false}

You have a test case there that I can't reproduce:

[].concat(b, new Object).length; // 2 (correct)

For me, this returns 1. Are you sure b was an Array when you executed this code? Could you paste the whole console log so I can see how you did it?

I'd say this is not a bug; we just need to fix and turn back on isConcatSpreadable. It's currently off, making it impossible to use.

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
--
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