00:23 | <Mathieu Hofman> | Can anyone explain to me what in the spec causes an error to be thrown in strict mode for 'abc'[2] = 'd' but not for 'abc'[2] nor Object('abc')[2] = 'd' ? |
00:26 | <Mathieu Hofman> | String Exotic object [[DefineOwnProperty]] (https://tc39.es/ecma262/#sec-string-exotic-objects-defineownproperty-p-desc) doesn't seem to check if the this value is a primitive string or object wrapper |
00:58 | <Mathieu Hofman> | To answer my own question, in strict mode it never get there, and OrdinarySetWithOwnDescriptor (https://tc39.es/ecma262/#sec-ordinarysetwithowndescriptor) Step 2.b. checks if the receiver is an object or not |