This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GCJ and CORBA


Hi,

I try to compile GNU Classpath with GCJ (3.4 and 4.0) and stumble over
the following oddity (actually hundreds of them):

../gnu/java/rmi/RMIMarshalledObjectOutputStream.java:52: Fehler: Class
»gnu.java.rmi.RMIMarshalledObjectOutputStream« doesn't define the abstract method »void
org.omg.CORBA.portable.OutputStream.write_wstring(java.lang.String)« from class
»org.omg.CORBA.portable.OutputStream«. This method must be defined or class
»gnu.java.rmi.RMIMarshalledObjectOutputStream« must be declared abstract.
   public class RMIMarshalledObjectOutputStream extends RMIObjectOutputStream

It looks like GCJ is confusing java.io.OutputStream (that is what
gnu.java.rmi.RMIMarshalledObjectOutputStream is derived from) with org.omg.CORBA.portable.OutputStream.
How is that possible? The code looks correct to me, and jikes seems to have no problem with it. Even if I
fully qualify all ObjectOutputStream references it fails. This is very odd.

I have the following proposals how to handle this:

1. don't import CORBA stuff in the GCJ tree until GCJ is fixed for these issues and add a configure option
in GNU Classpath --without-corba for those (like me) who would like to use GCJ for compiling Classpath.

or

2. implement a workaround (oh no, not another one! ;-) ) for GCJs bugs. In this case I would think
temporarily renaming the CORBA ObjectOutputStream (and other affected clash-names) would do. This is of
course very ugly, against the specs and whatnot.


Any other suggestions?

/Roman


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