GCJ problem with org.xml.sax package

S. Park kanzuri@gmail.com
Fri Aug 12 20:59:00 GMT 2005


Thanks, that did the trick. But now I'm wondering why this worked 
without -findirect-dispatch on Debian (Sarge) using gcc 4.0.

Sooyoung


Bryce McKinlay wrote:

> In GCC 4.1, some parts of libgcj, including org.xml, are compiled with 
> the new "binary compatibility" ABI. It isn't safe to call BC-ABI code 
> from code built with the old, "C++ ABI". Building your code with the 
> BC-ABI ("-findirect-dispatch") should solve the problem.
>
> The list of packages currently built with the BC-ABI in libgcj 4.1 
> includes:
>
> gnu.xml
> javax.imageio
> javax.xml
> gnu.java.beans
> gnu.java.awt.peer.gtk
> org.xml
> org.w3c
>
> Currently, code that refers directly to these classes should be built 
> with -findirect-dispatch.
>
> Bryce
>
>
> S. Park wrote:
>
>> I'm experiencing some strange behavior with a simple class compiled 
>> with gcj 4.1 on FreeBSD 4.11 and 5.4 IA32. It compiles and runs as 
>> is, but if I subclass anything in the package org.xml.sax (e.g. by 
>> uncommenting the 'extends' clause below), the executable seg faults. 
>> What's strange is that I can instantiate objects of types in that 
>> same package within the body of the main method. The problem only 
>> appears when subtyping. The test class looks like this:
>>
>> import java.util.HashMap;
>> import org.xml.sax.helpers.DefaultHandler;
>> import org.xml.sax.InputSource;
>>
>>
>> public class Foo .. extends DefaultHandler
>> {
>>       public static void main(String argv[])
>>       {
>>               InputSource is = new InputSource();
>>               String enc = is.getEncoding();
>>
>>
>> DefaultHandler dh = new DefaultHandler();
>>
>>               try
>>               {
>>                       dh.startDocument();
>>               }
>>               catch (Exception e)
>>               {
>>                       System.err.println(e.getMessage());
>>               }
>>
>>
>> System.out.println(enc);
>>
>>       }
>> }
>>
>>
>> Has anyone else run into this?
>>
>> Sooyoung
>
>
>
>



More information about the Java mailing list