[M3devel] and sysutils waitpid

Tony Hosking hosking at cs.purdue.edu
Wed Dec 31 00:48:43 CET 2008


Yes, this definitely needs cleanup.

On 30 Dec 2008, at 19:34, Jay wrote:

>
> 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