Output Stream Buffer Overflow
     open/4 option:  overflow(OverFlowAction)
     QP_stream:      unsigned char overflow

Written characters are stored in the buffer of an output stream by the middle layer output function until the current record is terminated, through a newline operation (such as nl/[0,1] or QP_newln()) or by writing the line border code of the stream. If a character is written when the buffer of an output stream is full, it overflows the output buffer. The overflow field specifies the action that the middle layer function should take if this happens. The possible values for overflow are:

specified as overflow(error) in open/4. It is an error when output stream buffer overflows.
specified as overflow(truncate) in open/4. Keeps the characters in the buffer and throws away the current character that overflows the output buffer.
specified as overflow(flush) in open/4. Pass the current buffer storing a partial record of the output stream to the bottom layer flush function to write out the buffer. The host operating system must support writing of partial records for the device associated with the stream.

Note that if an output stream is unbuffered (i.e. max_reclen is 0) then the middle layer function ignores the overflow field and calls the write function for each character written to the stream.