[RFC] Cygwin libstdc++ plan (operator new/delete replacement)

Christopher Faylor cgf-use-the-mailinglist-please@cygwin.com
Fri Oct 2 04:58:00 GMT 2009


On Thu, Oct 01, 2009 at 10:59:33PM +0100, Dave Korn wrote:
>Christopher Faylor wrote:
>> On Sun, Jun 28, 2009 at 06:47:51PM +0100, Dave Korn wrote:
>
>>>>> Index: winsup/cygwin/globals.cc
>
>>>>> -  DWORD unused[7];
>>>>> +  DWORD unused[6];
>>>>> +  struct per_process_cxx_malloc *cxx_malloc;
>
>> I thought there was precedent for putting it first but the unused field
>> has oscillated for years.  How about if we just leave it alone and
>> repurpose the forkee field?  
>
>  Then it will be zeroed out on startup by old executables:
>
>> @@ -64,8 +96,6 @@
>>    else
>>      u->impure_ptr_ptr = &_impure_ptr;	/* Older DLLs need this. */
>>  
>> -  u->forkee = 0;			/* This should only be set in dcrt0.cc
>> -					   when the process is actually forked */
>>    u->main = f;
>>  
>>    /* These functions are executed prior to main.  They are just stubs unless the
>
>  Argh!  Patch to follow shortly :-)

Why isn't this handled by change #1.362 to dcrt0.cc?  That should always
set cxx_malloc unconditionally (which, now that I think of it, might not
always be what you want either).

cgf



More information about the Cygwin-developers mailing list