This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix libgcj{,_bc}.so exports (PR libgcj/38872)
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Andrew Haley <aph at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org, java-patches at gcc dot gnu dot org
- Date: Tue, 27 Jan 2009 10:47:38 +0100
- Subject: Re: [PATCH] Fix libgcj{,_bc}.so exports (PR libgcj/38872)
- References: <20090126211135.GL5690@tyan-ft48-01.lab.bos.redhat.com> <497ED55E.9080107@redhat.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Tue, Jan 27, 2009 at 09:35:26AM +0000, Andrew Haley wrote:
> Jakub Jelinek wrote:
> > libgcj_bc.so exports _Jv_CreateJavaVM, but libgcj.so.10 exports it
> > as extern "C++" name, i.e. mangled. The following patch changes
> > it to extern "C" to match libgcj_bc.so and also removes one export
> > from libgcj_bc.so for an extern inline cni.h function which shouldn't
> > be ever undefined and libgcj.so.* never exported it.
> >
> > Bootstrapped/regtested on x86_64-linux, ok for trunk?
>
> No, this breaks the ABI. We need to keep the old version of _Jv_CreateJavaVM
> as an alias.
_Z16_Jv_CreateJavaVMP14_Jv_VMInitArgs is being removed from libgcj.so.10
only, and GCC 4.3 shipped libgcj.so.9. So it only breaks ABI with programs
built by earlier trunk snapshots, which I don't think we provide any
guarantee for.
Jakub