2025-07-04 [23:54:25.0330] [RegExpBuiltinExec](https://tc39.es/ecma262/#sec-regexpbuiltinexec) is of the opinion that reading and writing the "lastIndex" property of a native RegExp object can trigger user-code, but is that really the case? I at least cannot figure out a case for that: The property is an unconfigurable own property of each RegExp object; it is writable, but it shouldn't be possible to turn it into an accessor property or unset its [[Value]] so as to make the property lookup go into the prototype chain. Is there some other case that I'm missing here? [00:08:51.0483] The usercode warnings are pessimistic, spec text needs to opt-out. So maybe just that [00:09:29.0050] Yeah, I'm wondering if this is a case where I should open an editorial PR to add the opt-outs. [00:10:09.0875] (Well, that and also I'm wondering if in my engine code I need to be aware of possible GC points there.) [00:15:29.0496] I agree with your analysis that this wouldn't trigger usercode [00:16:16.0101] the property is installed when the regexp is created and it's a non configurable property. And the internal slot is checked for before this AO is called [00:20:18.0365] Unless it's the ToNumber call, rather than the Get [00:21:16.0793] Yeah, the ToLength call absolutely can trigger UC. [00:21:32.0636] And the Set calls can still throw errors. [00:30:45.0242] https://github.com/tc39/ecma262/pull/3636