This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/15815] Update #pragma interface and #pragma implementation documentation.
- From: "bangerth at dealii dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 9 Jun 2004 19:03:03 -0000
- Subject: [Bug c++/15815] Update #pragma interface and #pragma implementation documentation.
- References: <20040604014219.15815.hattons@globalsymmetry.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From bangerth at dealii dot org 2004-06-09 19:02 -------
This isn't Mark's fault, but I believe not to deprecate and remove
this (mis)feature is the wrong decision. The argument that was made
for keeping it was:
- assume there is an inline function
- it's address is taken in a number of translation units that end
up in a shared library and an application using it
- then it would be nice to have only one of them actually have a copy
of the body of this inline function, preferably the shared library
I don't buy this argument (and indeed the words that have been used in
cited threads are "would be nice" and "would like" when describing above).
I can't believe that there are many cases where out-of-line copies
of otherwise inlined functions take up a significant number of either
bytes on my harddisk or relocation entries in applications. Heck, my
application generates shared libraries on the order of 120MB, who cares
if a few small function bodies are there or not.
There must be a better argument for keeping this awkward feature if people
really want to cling on to it. I may buy that it shouldn't go away between
dot releases, but it should be possible to get rid of it at all, shouldn't
there?
W.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |jason at redhat dot com,
| |geoffk at geoffk dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15815