Subject: | Undefined value poorly converted when member of hash or array |
The function v82sv uses static &PL_sv_undef reference when converting null and undefined value. However, if this value becomes a member of hash or array, which can happen, then this value is not upgradeable to anything else.
A test case like this should be sufficient of demonstrating the problem:
JavaScript::V8::Context->new()->eval("[{'x': null}]")->[0]{x} = 1;
and it results in error "Modification of non-creatable hash value attempted".