Mailing-List: contact cygwin-developers-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT cygwin DOT com Delivered-To: mailing list cygwin-developers AT cygwin DOT com Message-ID: <3E677447.80202@hekimian.com> Date: Thu, 06 Mar 2003 11:16:07 -0500 X-Sybari-Trust: 103b82e9 1d9dc823 1d7bab7f 00000109 From: Joe Buehler Reply-To: jbuehler AT hekimian DOT com Organization: Spirent Communications, Inc. User-Agent: Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.3a) Gecko/20021212 X-Accept-Language: en-us, en MIME-Version: 1.0 To: cygwin-developers AT cygwin DOT com Subject: Re: gcc static constructor multi-threading flaw References: <3E4D06B8 DOT 5010306 AT hekimian DOT com> <20030305050809 DOT GB29712 AT redhat DOT com> In-Reply-To: <20030305050809.GB29712@redhat.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Christopher Faylor wrote: > Since neither gcc nor newlib have responded to this problem, I've > added a wrapper in cygwin. It will be in 1.3.21. By the way, if I recall correctly, the real fix *has* to be made in gcc. There is still a race in the gcc-generated code that can cause double-destruction at process exit. Your fix should eliminate the core dumps caused by atexit data structure corruption, though. -- Joe Buehler