This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
PATCH: Warn about __attribute__((strong)) in docs
- From: Mark Mitchell <mark at codesourcery dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: jason at redhat dot com
- Date: Sun, 18 Apr 2004 15:07:34 -0700
- Subject: PATCH: Warn about __attribute__((strong)) in docs
- Reply-to: mark at codesourcery dot com
This patch causes our documentation to warn users against using
__attribute__((strong)). As the recent V3 fiasco has demonstrated,
this is another case where we invented an extension without fully
understanding its implications.
I bear some of the blame for this particular extension, in that I had
the opportunity to vet it more fully than I did before it was
implemented. I will now rap my knuckles with this ruler. Ouch.
Jason, I'd like your thoughts on removing this extension, perhaps even
before 3.4.1. I don't think we fully understand what it means yet,
and we can always add it back if and when we think it's necessary.
Thoughts?
Tested by regenerating the documentation, applied on the mainline and
on the 3.4 branch.
--
Mark Mitchell
CodeSourcery, LLC
mark@codesourcery.com
2004-04-18 Mark Mitchell <mark@codesourcery.com>
* doc/extend.texi (Strong Using): Warn users against using this
feature.
Index: doc/extend.texi
===================================================================
RCS file: /cvs/gcc/gcc/gcc/doc/extend.texi,v
retrieving revision 1.177.4.7
diff -c -5 -p -r1.177.4.7 extend.texi
*** doc/extend.texi 24 Mar 2004 03:06:35 -0000 1.177.4.7
--- doc/extend.texi 18 Apr 2004 21:59:10 -0000
*************** interface table mechanism, instead of re
*** 8279,8288 ****
--- 8279,8293 ----
See also @xref{Strong Using}.
@node Strong Using
@section Strong Using
+ @strong{Caution:} The semantics of this extension are not fully
+ defined. Users should refrain from using this extension as its
+ semantics may change subtly over time. It is possible that this
+ extension wil be removed in future versions of G++.
+
A using-directive with @code{__attribute ((strong))} is stronger
than a normal using-directive in two ways:
@itemize @bullet
@item