Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Exclude redirection assert on C89 builds
As building under C89 is something of a "stunt" more than anything, the smart console features have been limited to C99 builds or higher, in order to make that code more maintainable and accessible. C89 builds will only have whatever I/O the read() and write() functions give you on stdin and stdout by default--which is typically junk. However, the 32-bit Windows build had been C89, because it said the standard was "C" in an era where the old gcc had not been bumped to consider C99 or later the "standard". This meant that it hit an assert which was only valid in redirected input or output situations, where the terminal was inactive. But since the C89 mode uses that always, it should not assert. This guards the assert to only happen in non-smart-console builds. It also switches over the 32-bit Windows test build to use C99, due to the odds that people are going to continue downloading this despite my pleading not to (because the builds exist to test breadth of the build matrix, not to please any user in particular). And when they download it they will complain that it doesn't have smart console features.
- Loading branch information