[M3devel] and sysutils waitpid

Jay jay.krell at cornell.edu
Tue Dec 30 09:34:03 CET 2008


On a related note...C:\dev2\cm3.2\m3-libs\sysutils\src\POSIX has the waitpid(nohang)/sleep() loop that I had removed in other places, alas -- replaced in pthreads by waitpid(hang), whereas userthreads still has waitpid(nohang)/sleep (another flaw in user threads?)
 
and..isn't this a little odd:
 
    RETURN MIN(LAST(Process.ExitCode),LOOPHOLE(statusM3,Uexec.w_A));

If there are no users of this, I'll just comment it out.
 
 - Jay

----------------------------------------
> From: jay.krell at cornell.edu
> To: hosking at cs.purdue.edu; m3devel at elegosoft.com
> Date: Tue, 30 Dec 2008 07:51:56 +0000
> Subject: [M3devel] darwin-generic waitpid?
>
>
> It looks like waitpid's output is endian-dependent, and that therefore darwin-generic is wrong on some architectures, asis linux-common and openbsd-common.
>
>
> I expect to fix this shortly, by replacing all the Modula-3 result bitfields with uint8_t and
> having a C wrapper do the translation.
>
>
> As well, for increased portability, the flags will be input uint8_t fields in the record, rather than platform-dependent flags.
>
>
> - Jay


More information about the M3devel mailing list