[net.unix-wizards] structures, new csav

gwyn@Brl@sri-unix (10/20/82)

From:     Doug Gwyn <gwyn@Brl>
Date:     18 Oct 82 9:34:43-EDT (Mon)
I believe the structure passing, return, and assignment have been there since
7th Edition UNIX (documented in a 1-page paper behind the C Reference Manual).

Note that the "csv" routine has since been changed along with a corresponding
change in the PDP-11 (Ritchie) compiler, to link via R0 instead of R5.  This
apparently is intended to avoid problems when the save sequence is
interrupted (by signal or device interrupt); it is also slightly faster.  If
your C compiler is based on 7th Edition or older, it is easy to change to this
new scheme.  However, there is still a problem with true interrupts occurring
during return of a struct from a function, so this facility should be avoided
in kernel or standalone work.