Exit values should be distinguishable from signals (and even from
signals+core dumps).  Either use the C macros, or assume bits 15-8 are
the exit return code, bit 7 is the core dump, and bits 6-0 are the
signal number (with 127 being shell exec failure).  It's the same as
in Perl unless Chicken does something weird with the return from
system; granted I haven't looked at the code.  Hopefully Chicken's
(system) returns the value of system(), not errno.  system() never
sets errno to my knowledge.

On 3/14/07, Kon Lovett <[EMAIL PROTECTED]> wrote:
IMHO this means the return value is almost useless w/o some hoops;
i.e. if 'errno' == the return value the return value is error value,
but differentiating an exit-status from a signal-code is probably
impossible.


_______________________________________________
Chicken-users mailing list
Chicken-users@nongnu.org
http://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to