This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: import list creation on AIX and GCC 2.95-branch


>>>>> "Alexander N Kabaev" writes:

Alexander> Anyway, assuming that exceptions over shared library boundaries are working
Alexander> correctly, what approach would you recommend to solve the shared exception
Alexander> context problem on GCC 2.95.2 branch? Is building libgcc.so and libgcc_r.so the
Alexander> right way to go? 

	Exceptions over shared libraries are *not* working correctly
except by accident.

	gcc-2.95 does not set the TOC address correctly when throwing an
exception through a shared library.  There are some extremely broken
patches floating around which subtly break things when trying to fix the
problem.  People who port those patches to gcc-2.95 have run into major
problems in complicated scenarios.

	I have no intention supporting a release of layer upon layer of
incorrect patches which break simple, normal, correct functionality in
order to fix things which are not guaranteed to work.  The only way to fix
the problem is to ADD NEW FUNCTIONALITY which specifically is not the
purpose of the gcc-2.95 bugfix releases.

	GCC 3.0 fixes this correctly once and for all.  If gcc-2.95.2
happens to work for you, great.  gcc-2.95 does not support building shared
libstdc++ on AIX.  With a static libstdc++, there is not problem of
multiple exception handling contexts.  If you know enough to build shared
libraries and investigate collect2, you know enough to re-enable the
broken import of libgcc symbols in collect2.

	I am trying to ensure that gcc-2.95.3 works correctly for the
average end user who builds a default configuration of gcc-2.95.3 or
downloads a prebuilt gcc-2.95.3 binary (which is not configured with
shared libraries).  Period.  End of story.

David

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]