archives

« Bugzilla Issues Index

#3108 — 9.5.12 [[OwnPropertyKeys]] ( ) step 20.c can trip an assertion


Step 20.c. reads:
> c. Let desc the result of calling the [[GetOwnProperty]] internal method
> of target with argument key.

But the algorithm hasn't checked that key is a string or symbol.


It's an invariant of [[OwnPropertyKeys]] that the List it returns only contains strings and symbols. Also the Proxy version of [[OwnPropertyKeys]] enforces that invariant. So, the only way it could be violated would be if a native exotic object incorrectly implemented [[OwnPropertyKeys]]

At added an assert concerning the list values in 9.5.12 after the call that returns targetKeys.

Fixed in rev27 editor's draft


fixed in rev27 draft