Although a lot of really strange error messages occurred, first streams not being ready (fd_is_ready() returned false) and then once that was fixed (in part at least) many other weird seemingly unrelated errors occurred. The problem was with commit
4c8f0d567156e3e62b72c6e069bb8e36d834019e: by accident the "iocccsize_version" in the JSON files in jparse/test_jparse/test_JSON and test_ioccc/test_JSON was not updated. This caused the many different error messages which broke chkentry_test.sh which broke make prep.
The fd_is_ready() function now returns true if isatty(fd) as well. This appeared to solve the original problem of fd_is_read() returning false though this does not entirely make sense given that the files were actually files, not tty descriptors.
Although a lot of really strange error messages occurred, first streams not being ready (fd_is_ready() returned false) and then once that was fixed (in part at least) many other weird seemingly unrelated errors occurred. The problem was with commit 4c8f0d567156e3e62b72c6e069bb8e36d834019e: by accident the "iocccsize_version" in the JSON files in jparse/test_jparse/test_JSON and test_ioccc/test_JSON was not updated. This caused the many different error messages which broke chkentry_test.sh which broke make prep.
The fd_is_ready() function now returns true if isatty(fd) as well. This appeared to solve the original problem of fd_is_read() returning false though this does not entirely make sense given that the files were actually files, not tty descriptors.
Updated CHANGES.md for these updates.