[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug classpath/23431] New: abstract method resolve error in gij
From: |
snambi at gmail dot com |
Subject: |
[Bug classpath/23431] New: abstract method resolve error in gij |
Date: |
17 Aug 2005 05:55:55 -0000 |
there is an abstract class, class B which implements an interface. the method
defined by the interface, is the abstract method. Another class C extends B and
implements the method. it compiles in gcj -C.
while executing in gij, it throws an IllegalAccessError from
VMClassLoader.resolveClass.
below is the sequence.
$cat B.java
abstract class B implements javax.jms.MessageListener
{
public B()
{
System.out.println("Class B instantiated");
}
abstract void onMessage( javax.jms.Message message );
}
matrix:~/src/java/abs_classes>
$cat C.java
class C extends B
{
public C()
{
System.out.println("Class C instantiated");
}
void onMessage(javax.jms.Message message)
{
System.out.println("abstract method test implemented");
}
}
$cat A.java
class A
{
private C c = null;
public A()
{
System.out.println("A is getting instantiated");
c = new C();
}
public static void main( String[] args )
{
A a = new A();
}
}
matrix:~/src/java/abs_classes>
$gcj --classpath=.:jms.jar -C *.java
there is a jms.jar file in the current directry.
matrix:~/src/java/abs_classes>
$gij --cp ".:jms.jar" A
A is getting instantiated
Exception in thread "main" java.lang.IllegalAccessError: C.onMessage
(Ljavax.jms.Message;)V
at java.lang.VMClassLoader.resolveClass(java.lang.Class)
(/otp/software/gcc/4.0.1/lib/libgcj.so.6.0.0)
at java.lang.Class.initializeClass()
(/otp/software/gcc/4.0.1/lib/libgcj.so.6.0.0)
at A.A() (Unknown Source)
at A.main(java.lang.String[]) (Unknown Source)
at gnu.java.lang.MainThread.call_main()
(/otp/software/gcc/4.0.1/lib/libgcj.so.6.0.0)
at gnu.java.lang.MainThread.run()
(/otp/software/gcc/4.0.1/lib/libgcj.so.6.0.0)
sorry for pasting the source code. it is too difficult to explain it otherwise.
gcj -v --help
.
.
.
Target: i686-pc-linux-gnu
Configured with: ../configure --prefix=/otp/software/gcc/4.0.1
Thread model: posix
gcc version 4.0.1
--
Summary: abstract method resolve error in gij
Product: classpath
Version: unspecified
Status: UNCONFIRMED
Severity: critical
Priority: P3
Component: classpath
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: snambi at gmail dot com
CC: bug-classpath at gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23431
- [Bug classpath/23431] New: abstract method resolve error in gij,
snambi at gmail dot com <=
- [Bug libgcj/23431] abstract method resolve error in gij, pinskia at gcc dot gnu dot org, 2005/08/17
- [Bug libgcj/23431] abstract method resolve error in gij, pinskia at gcc dot gnu dot org, 2005/08/17
- [Bug libgcj/23431] abstract method resolve error in gij, snambi at gmail dot com, 2005/08/19
- [Bug libgcj/23431] [4.0/4.1 regression] gcj allows overriding with less restrictive access, tromey at gcc dot gnu dot org, 2005/08/22
- [Bug java/23431] [4.0/4.1 regression] gcj allows overriding with more restrictive access, rmathew at gcc dot gnu dot org, 2005/08/23
- [Bug java/23431] [4.0/4.1 regression] gcj allows overriding with more restrictive access, rmathew at gcc dot gnu dot org, 2005/08/23