facebookarchive/prepack

Produce abstract string for JSON.stringify(concreteObject) if properties are abstract

Open

#1,012 opened on Sep 27, 2017

View on GitHub
 (0 comments) (0 reactions) (0 assignees)JavaScript (520 forks)batch import
abstractbughelp wantedtest needed

Repository metrics

Stars
 (14,268 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

If a concrete object has properties with abstract values, the interpretation of SerializeJSONProperty in src/intrinsics/ecma262/JSON.js will either fail obscurely or do the wrong thing, such as returning undefined.

It would be better to first check for this case and then go into the JSON.stringify part of the special case code for dealing with JSON.parse(JSON.stringify(abstractObject)).

Contributor guide