Description
Native-to-JavaScript conversion for AnyMap and typed Record values writes keys with ordinary property assignment. A record key named __proto__ therefore invokes Object.prototype's legacy setter: object values replace the result prototype, while primitive values disappear without creating an own key.
Expected behavior
__proto__ should be emitted as a normal own enumerable/writable/configurable record property, preserving its converted value and the result's ordinary Object prototype across C++ and Kotlin/Swift implementations.
Description
Native-to-JavaScript conversion for
AnyMapand typedRecordvalues writes keys with ordinary property assignment. A record key named__proto__therefore invokesObject.prototype's legacy setter: object values replace the result prototype, while primitive values disappear without creating an own key.Expected behavior
__proto__should be emitted as a normal own enumerable/writable/configurable record property, preserving its converted value and the result's ordinary Object prototype across C++ and Kotlin/Swift implementations.