Look at the comments near the end of the unit:
// Note: this variant of fpSelect() is a thin wrapper around the kernel's syscall.
// In the case of Linux the syscall DOES update the timeout parameter.
...
// Note: this variant of fpSelect() is a thin wrapper around the kernel's syscall.
// In the case of Solaris the syscall DOES NOT update the timeout parameter.
select() (as a unix syscall) and fpSelect() (as a Pascal wrapper) takes a collection of file handles as parameters, plus a timeout. It returns either when there is activity associated with one of the handles, or when the timeout expires.
Linux updates the timeout parameter before exit, while SunOS/Solaris doesn't, so on Linux you can see how long an overall timeout has left on the clock.
Or something like that. It's a good 15 years since I worked on that, and I'm not as young as I used to be either :-)
This shouldn't affect compilation, or code that doesn't use the four-parameter variant of SerReadTimeout(). And since the conditional tests for Linux rather than for SunOS etc., if the Mac's OS- as a Berkeley derivative- works the same then it should be OK without modification.
Note the test programs posted in the other thread, but the stty stuff is untested on anything other than Linux.
MarkMLl