public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: Jason Merrill <jason@redhat.com>
To: jason@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org,
Subject: Re: c++/6611: [PATCH] Non-weak emission of `std::__default_alloc_template[...]' on platform(s) where it should be weak
Date: Fri, 17 May 2002 21:46:00 -0000	[thread overview]
Message-ID: <20020518044602.26734.qmail@sources.redhat.com> (raw)

The following reply was made to PR c++/6611; it has been noted by GNATS.

From: Jason Merrill <jason@redhat.com>
To: gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org
Cc: bkoz@redhat.com, gcc-bugs@gcc.gnu.org, ljrittle@acm.org,
	pfeifer@dbai.tuwien.ac.at
Subject: Re: c++/6611: [PATCH] Non-weak emission of
 `std::__default_alloc_template[...]' on platform(s) where it should be
 weak
Date: Sat, 18 May 2002 05:42:33 +0100

 --=-=-=
 
 We clear DECL_EXTERNAL when we start to define a function.  In this case
 when we were supposed to clear it again, it was already referenced, so
 DECL_NEEDED_P was true, so we ended up emitting it even though
 import_export_decl tried to suppress it.
 
 Yet another ugly tweak to the C++ linkage morass.  I'll get back to work on
 the rewrite RSN.
 
 Tested i686-pc-linux-gnu, applied to trunk.  I'll come up with a testcase
 soon, but I want to get this in now so it stops interfering with libstdc++
 work.
 
 2002-05-18  Jason Merrill  <jason@redhat.com>
 
 	* decl2.c (import_export_decl): If we clear
 	DECL_NOT_REALLY_EXTERN, make sure DECL_EXTERNAL is set.
 
 
 --=-=-=
 Content-Type: text/x-patch
 Content-Disposition: inline
 
 *** decl2.c.~1~	Thu May 16 05:52:12 2002
 --- decl2.c	Fri May 17 22:59:52 2002
 *************** import_export_decl (decl)
 *** 2481,2487 ****
   	    comdat_linkage (decl);
   	}
         else
 ! 	DECL_NOT_REALLY_EXTERN (decl) = 0;
       }
     else if (DECL_FUNCTION_MEMBER_P (decl))
       {
 --- 2481,2490 ----
   	    comdat_linkage (decl);
   	}
         else
 ! 	{
 ! 	  DECL_EXTERNAL (decl) = 1;
 ! 	  DECL_NOT_REALLY_EXTERN (decl) = 0;
 ! 	}
       }
     else if (DECL_FUNCTION_MEMBER_P (decl))
       {
 *************** import_export_decl (decl)
 *** 2497,2502 ****
 --- 2500,2508 ----
   			 && ! flag_implement_inlines
   			 && !DECL_VINDEX (decl)));
   
 + 	      if (!DECL_NOT_REALLY_EXTERN (decl))
 + 		DECL_EXTERNAL (decl) = 1;
 + 
   	      /* Always make artificials weak.  */
   	      if (DECL_ARTIFICIAL (decl) && flag_weak)
   		comdat_linkage (decl);
 
 --=-=-=--


             reply	other threads:[~2002-05-18  4:46 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-05-17 21:46 Jason Merrill [this message]
2002-05-18  8:06 B. Kosnik
2002-05-21  8:23 Gerald Pfeifer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20020518044602.26734.qmail@sources.redhat.com \
    --to=jason@redhat.com \
    --cc=gcc-prs@gcc.gnu.org \
    --cc=jason@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).