Serial ports for Zig: rate, framing, flow control and modem lines, on termios2 for Linux and the DCB for Windows.

Fix the two failures macOS found

macOS's memory devices, /dev/null among them, answer a terminal ioctl with ENODEV rather than ENOTTY, so tcgetattr's ENODEV now means NotASerialPort rather than Unexpected. The BSD line discipline sets PENDIN, which is kernel state rather than a setting, on switching back into canonical mode, so restoring a canonical original on macOS reads back with it set. The restore test now leaves that bit out of its comparison. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012fcrFCsAeNziaz3Y5QR8E2


Author jcollie.dev
Co-author Claude Opus 5.5 Date Commit Parent 1a06e42a
+9 -2
1 changed file
+9 -2
1 changed file