From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20171 invoked by alias); 20 Dec 2002 02:09:09 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 20123 invoked by uid 61); 20 Dec 2002 02:09:07 -0000 Date: Thu, 19 Dec 2002 18:09:00 -0000 Message-ID: <20021220020907.20115.qmail@sources.redhat.com> To: gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org, jrheath@ca.ibm.com, jsm28@cam.ac.uk, jsm28@gcc.gnu.org, nobody@gcc.gnu.org From: bangerth@dealii.org Reply-To: bangerth@dealii.org, gcc-bugs@gcc.gnu.org, gcc-prs@gcc.gnu.org, jrheath@ca.ibm.com, jsm28@cam.ac.uk, jsm28@gcc.gnu.org, nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org Subject: Re: c++/7748: Static objects in dynamic library with non-default priority not initialized X-SW-Source: 2002-12/txt/msg01057.txt.bz2 List-Id: Synopsis: Static objects in dynamic library with non-default priority not initialized Responsible-Changed-From-To: unassigned->jsm28 Responsible-Changed-By: bangerth Responsible-Changed-When: Thu Dec 19 18:09:06 2002 Responsible-Changed-Why: The last to change the respective code. If you feel you are not the right person to ask, I'll be happy to undo this. State-Changed-From-To: open->analyzed State-Changed-By: bangerth State-Changed-When: Thu Dec 19 18:09:06 2002 State-Changed-Why: Confirmed. This directly contradicts what the documentation says. I can reproduce this also on x86 Linux. Looking at the assembler code, I see that everything is laid out, i.e. the __static_initialization_and_destruction_0(int, int) function is ok, and there are symbols _GLOBAL__I.NNNNN_t1 and _GLOBAL__D.NNNNN_t1 for initialization and destruction of objects for each priority that is present. I don't know who is responsible to call these functions. If it is the linker, then it is not gccs fault. However, there is also the symbol _GLOBAL__I_t1 that only initializes the elements of one priority class, and if this is what the linker calls when loading the shared library, then the code for this function is wrong. I guess we need someone with more knowledge about this stuff here. Joseph, you were the last to touch the code, can you help? Thanks W. http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7748