This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: gcj, shared libraries, and -Bsymbolic
- From: Richard Henderson <rth at redhat dot com>
- To: Andrew Haley <aph at redhat dot com>
- Cc: java-patches at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- Date: Tue, 25 Jan 2005 17:19:14 -0800
- Subject: Re: gcj, shared libraries, and -Bsymbolic
- References: <16886.23339.90755.656436@cuddles.cambridge.redhat.com>
What you actually want is (at least for -findirect-dispatch) is to
not export any symbols whatsoever. And to do so as simply as not
marking the symbols TREE_PUBLIC in the front end.
Without -findirect-dispatch, mixing with C++ code causes problems,
marking .hidden doesn't work for java libraries referencing other
libraries. Marking .protected would work, but implies enough extra
overhead so as to not make it worthwhile (since we have no way to
indicate to the dynamic linker that we do not need function pointer
equality semantics).
I was actually looking at -findirect-dispatch the other day, but
got distracted...
r~