[D-runtime] [D-Programming-Language/druntime] eddc04: Merge branch 'master' of git://github.com/ibuclaw/...

Brad Roberts braddr at puremagic.com
Sun Feb 6 23:22:49 PST 2011


To get win32 back into a form that works, I've switched the win32 build back to using the .c version of monitor.  The
posix platforms continue to use the .d version.

On 2/6/2011 8:35 PM, Brad Roberts wrote:
> Switching just monitor back to the c version gets win32 back in working shape.  So, exploring from there what's wrong, I
> went to a hybrid version, the .c file referencing the global variables (_monitor_critsec and inited) extern(C)'ed from
> the .d version.  Still works.  From there, I moved to using the .d version of _STI_monitor_staticctor.  That works for
> the druntime unit tests, but not for phobos' tests.
> 
> You can see the source of what I used here:
>   https://github.com/braddr/druntime/commits/win32-monitor-broken
> 
> The point where it works, with a mostly .c file:
>   https://github.com/braddr/druntime/commit/6c2f4d1b960c8f227a1ee033f072504a12d94e36
> 
> The point where I've moved the ctor to the .d file:
>   https://github.com/braddr/druntime/commit/7d43689996a63ee0195a55c8d3836edf5e59e6e6
> 
> So.. what am I missing?  Is there something special about win32 functions that start with an underscore?  Is there
> something special about win32 when it comes to linking one lib into another?  That it works for druntime's unittest and
> not phobos's is confusing to me.  I do next to no win32 programming (completely zero except for dmd), so I'm unfamiliar
> with any of it's idiosyncrasies.
> 
> Thanks,
> Brad
> 
> On 2/6/2011 4:47 PM, Brad Roberts wrote:
>> Grf.. I was afraid of that.. the win32 build is unhappy with these changes.  I'll dig in, but if anyone sees the problem
>> and wants to save me the time, shout.
>>
>> Thanks,
>> Brad
>>
>> On 2/6/2011 4:16 PM, noreply at github.com wrote:
>>> Branch: refs/heads/master
>>> Home:   https://github.com/D-Programming-Language/druntime
>>>
>>> Commit: eddc043364178a89a9146fdd0a665ae610dc245f
>>>     https://github.com/D-Programming-Language/druntime/commit/eddc043364178a89a9146fdd0a665ae610dc245f
>>> Author: Brad Roberts <braddr at puremagic.com>
>>> Date:   2011-02-06 (Sun, 06 Feb 2011)
>>>
>>> Changed paths:
>>>   M src/core/sys/osx/mach/kern_return.d
>>>   M src/core/sys/osx/mach/port.d
>>>   M src/core/sys/osx/mach/semaphore.d
>>>   M src/core/sys/osx/mach/thread_act.d
>>>   M src/core/thread.d
>>>   M src/gc/gcx.d
>>>   M src/rt/critical.c
>>>   A src/rt/critical_.d
>>>   M src/rt/mars.h
>>>   M src/rt/memory.d
>>>   M src/rt/monitor.c
>>>   A src/rt/monitor_.d
>>>
>>> Log Message:
>>> -----------
>>> Merge branch 'master' of git://github.com/ibuclaw/druntime
>>>
>>>
>>> Commit: 031f65b587f2041b1030147fa83db2a31a820037
>>>     https://github.com/D-Programming-Language/druntime/commit/031f65b587f2041b1030147fa83db2a31a820037
>>> Author: Brad Roberts <braddr at puremagic.com>
>>> Date:   2011-02-06 (Sun, 06 Feb 2011)
>>>
>>> Changed paths:
>>>   M posix.mak
>>>   R src/rt/critical.c
>>>   R src/rt/mars.h
>>>   R src/rt/monitor.c
>>>   M win32.mak
>>>
>>> Log Message:
>>> -----------
>>> Finish conversion from critical.c and monitor.d to their .d versions



More information about the D-runtime mailing list