This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: RFC: Stricter semantics for renaming pragmas
- From: Ian Lance Taylor <ian at wasabisystems dot com>
- To: Joe Buck <Joe dot Buck at synopsys dot COM>
- Cc: Zack Weinberg <zack at codesourcery dot com>, gcc at gcc dot gnu dot org
- Date: 19 May 2004 13:13:54 -0400
- Subject: Re: RFC: Stricter semantics for renaming pragmas
- References: <87lljpnn3j.fsf@codesourcery.com><20040519094524.B21427@synopsys.com>
Joe Buck <Joe.Buck@synopsys.COM> writes:
> On Tue, May 18, 2004 at 07:54:08PM -0700, Zack Weinberg wrote:
> > We currently have three ways of changing the object-file name of a
> > variable or function. They are __asm__("foo") tacked on the end of
> > the declaration; #pragma redefine_extname; #pragma extern_prefix.
>
> Who is using this feature now? (That is, which well-known programs? glibc?).
> Which of the three ways is most commonly used?
>
> That matters because any simplifications that are made should try to break
> as little as possible.
#pragma redefine_extname appears in Solaris system headers. Support
for it is required to compile programs on Solaris. For example, see
http://gcc.gnu.org/ml/gcc-patches/2001-11/msg01966.html
although a different patch was later adopted.
I presume from the documentation that #pragma extern_prefix appears in
Tru64 system headers, but I don't know that from direct observation.
I hope that neither #pragma is used anywhere else.
__asm__ is of course an old extension used by many people, including
glibc.
Ian