So I went and made BYOND run on all of them. It's got lots of bugs to say the least.
Here's the results file from running BYOND, compared to Python 3.5.2 (because I didn't want to run the full suite): http://84.195.252.227/static/byond_json_parsing.html
Keep in mind that unlisted tests means the results were correct on both.
The code for the fork with the BYOND test can be found here: https://github.com/PJB3005/JSONTestSuite/tree/byond.
To run them (paths relative to folder containing BYOND-specific code):
- First be on Linux because I don't think you can even do proper command line arguments on BYOND on Windows. If you can tell me it's only some small code changes.
- Compile the test.dm file in parsers/test_BYOND.
- Compile the Rust project located in extlib/ with i686 Rust, copy target/debug/libextlib.so to be next to the dmb.
- Run the "BYOND" test with the project's test runner.
The Rust project was needed because I don't know of a better way to make DD exit with a controlled return code, which the test runner needs. The Rust code just gets compiled to a dylib that's invoked with call()() which exits the process.