Question about EH
Tom Tromey
tromey@cygnus.com
Wed Feb 23 11:26:00 GMT 2000
>>>>> "Mike" == Mike Stump <mrs@windriver.com> writes:
Tom> Currently, you can't `catch' a Java exception in a C++ function
Mike> Well, this is a java issue. If you want to find the g++
Mike> entries, you will need to figure out a mapping between C++ and
Mike> Java that you like, and extend the Java matcher to handle the
Mike> union case better.
I don't see how we can do this.
Per (I think) added Java type support to the C++ compiler. Java
objects are a lot like C++ objects, but they aren't the same in every
respect. For instance, Java objects don't use the C++ notion of RTTI
-- Java has its own way of doing this.
If I have a pointer to a random collection of bits (which is what I
have in the type matcher, I think), I don't think that there is a way
to determine whether it is a C++ object or a Java object.
Mike> If you start small "i" (the mangling for the `int' type in
Mike> C/C++), and just catch those in java (from a throw 1; in C++),
Mike> you will get a feel for it.
This is the start of the impossible things. In Java it is only
possible to throw a Java object derived from java.lang.Throwable. (In
C++ terms this is the same as throwing a pointer to that object -- in
Java you can only have object references.)
Tom
More information about the Gcc
mailing list