[Bug java/16653] incompatible type on stack
mwteng at hotmail dot com
gcc-bugzilla@gcc.gnu.org
Wed Jul 21 08:47:00 GMT 2004
------- Additional Comments From mwteng at hotmail dot com 2004-07-21 08:47 -------
(In reply to comment #2)
> (In reply to comment #0)
> > When try running the binary, its failed with ...
> > org.apache.xercs.parsers.XML11Configuration::configureXML11Pipeline(()V):
> > incompatible type on stack ...
> You mean when you execute "a.out", right?
> This looks like a bytecode verification error...
> > The way in which the application is built are:
> > (1) convert two required xml parser jar to object for linking...
> > e.g. gcj -c -O2 xmlParserAPIs.jar
> This is a weird usage...you can just specify xmlParserAPIs.jar
> on the next GCJ command line...
> > (2) compile the application source and link with those libraries.
> > e.g. gcj -O2 --main=Main Main.java xmlParserAPIs.o xercesImpl.o
> >
> > BTW, I could like to know how to submit a complete report for
investigation.
> You can help by running GCJ's "jcf-dump" (or JDK's "javap") on
> the class "org.apache.xerces.parsers.XML11Configuration" and pasting
> the output for the method "configureXML11Pipeline" - do make sure
> to have the relevant JARs in your CLASSPATH when you run this. For
> example (on Linux):
> jcf-dump --classpath xmlParserAPIs.jar -c
> org.apache.xerces.parsers.XML11Configuration >foo.txt
> (Note the "-c" flag.)
> Open "foo.txt" and copy the method body for "configureXML11Pipeline"
> into this bug report.
No, I am running an executable name 'main'. The simple program needs xml
parser and we are using xmlParserAPIs.jar and xercesImpl.jar. However, I
failed to build the simple program without converting the two jars into object
file.
------------------------- Below is the compilation and run detail ------------
gcj -v -g -O2 --main=Main -o main \
alpha/LowerCase.java alpha/UpperCase.java alpha/one/LowerCase.java
alpha/two/UpperCase.java beta/LowerCase.java beta/UpperCase.java
beta/one/LowerCase.java beta/two/UpperCase.java
xmlvalidator/xmlvalidator01.java Main.java \
lib/xmlParserAPIs.o lib/xercesImpl.o
Reading specs from /opt/gcc-3.4.1/bin/../lib/gcc/i686-pc-linux-gnu/3.4.1/specs
Reading specs from /opt/gcc-3.4.1/bin/../lib/gcc/i686-pc-linux-
gnu/3.4.1/../../../libgcj.spec
rename spec lib to liborig
Configured with: ./configure --prefix=/opt
Thread model: posix
gcc version 3.4.1
/opt/gcc-3.4.1/bin/../libexec/gcc/i686-pc-linux-
gnu/3.4.1/jc1 /tmp/ccfUtvVjjx -fhash-synchronization -fno-use-divide-
subroutine -fuse-boehm-gc -fnon-call-exceptions -fkeep-inline-functions -
quiet -dumpbase ccfUtvVjjx -mtune=pentiumpro -auxbase ccfUtvVjjx -g -O2 -
version -ffilelist-file -o /tmp/cc0lRYQt.s
GNU Java version 3.4.1 (i686-pc-linux-gnu)
compiled by GNU C version 3.2.2 20030222 (Red Hat Linux 3.2.2-5).
GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=31906
Class path starts here:
./
/mnt/hgfs/cbr-deploy-lib/activation.jar/ (zip)
/mnt/hgfs/cbr-deploy-lib/jh.jar/ (zip)
/mnt/hgfs/cbr-deploy-lib/mailapi.jar/ (zip)
/mnt/hgfs/cbr-deploy-lib/xmlParserAPIs.jar/ (zip)
/mnt/hgfs/cbr-deploy-lib/jaxp.jar/ (zip)
/mnt/hgfs/cbr-deploy-lib/parser.jar/ (zip)
/mnt/hgfs/cbr-deploy-lib/xercesImpl.jar/ (zip)
/opt/gcc-3.4.1/bin/../lib/gcc/../../share/java/libgcj-3.4.1.jar/ (system)
(zip)
as -V -Qy -o /tmp/ccoyyzOj.o /tmp/cc0lRYQt.s
GNU assembler version 2.13.90.0.18 (i386-redhat-linux) using BFD version
2.13.90.0.18 20030206
/opt/gcc-3.4.1/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.1/jvgenmain
Mainmain /tmp/ccWnJomg.i
/opt/gcc-3.4.1/bin/../libexec/gcc/i686-pc-linux-
gnu/3.4.1/cc1 /tmp/ccWnJomg.i -quiet -dumpbase Mainmain.c -mtune=pentiumpro -
g -O2 -version -fdollars-in-identifiers -o /tmp/cc0lRYQt.s
GNU C version 3.4.1 (i686-pc-linux-gnu)
compiled by GNU C version 3.2.2 20030222 (Red Hat Linux 3.2.2-5).
GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=31906
as -V -Qy -o /tmp/ccOZFmDd.o /tmp/cc0lRYQt.s
GNU assembler version 2.13.90.0.18 (i386-redhat-linux) using BFD version
2.13.90.0.18 20030206
/opt/gcc-3.4.1/bin/../libexec/gcc/i686-pc-linux-gnu/3.4.1/collect2 --eh-frame-
hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o
main /usr/lib/crt1.o /usr/lib/crti.o /opt/gcc-3.4.1/bin/../lib/gcc/i686-pc-
linux-gnu/3.4.1/crtbegin.o -L/opt/gcc-3.4.1/bin/../lib/gcc/i686-pc-linux-
gnu/3.4.1 -L/opt/gcc-3.4.1/bin/../lib/gcc -L/opt/gcc-3.4.1/bin/../lib/gcc/i686-
pc-linux-gnu/3.4.1/../../.. /tmp/ccOZFmDd.o lib/xmlParserAPIs.o
lib/xercesImpl.o /tmp/ccoyyzOj.o -lgcc_s -lgcc -lgcj -lm -lpthread -ldl -
lgcc_s -lgcc -lc -lgcc_s -lgcc /opt/gcc-3.4.1/bin/../lib/gcc/i686-pc-linux-
gnu/3.4.1/crtend.o /usr/lib/crtn.o
[Alpha.two]SOMESTRING
[Alpha.one]somestring
XML File: /mnt/hgfs/share/casebase.xml
Exception in thread "main" java.lang.VerifyError: verification failed at PC
236 in org.apache.xerces.parsers.XML11Configuration:configureXML11Pipeline(()
V): incompatible type on stack
at _Jv_BytecodeVerifier.verify_fail(byte, int) (/opt/gcc-
3.4.1/lib/libgcj.so.5.0.0)
at _Jv_BytecodeVerifier.pop_init_ref(_Jv_BytecodeVerifier.type) (/opt/gcc-
3.4.1/lib/libgcj.so.5.0.0)
at _Jv_BytecodeVerifier.verify_instructions_0() (/opt/gcc-
3.4.1/lib/libgcj.so.5.0.0)
at _Jv_VerifyMethod(_Jv_InterpMethod) (/opt/gcc-3.4.1/lib/libgcj.so.5.0.0)
at _Jv_PrepareClass(java.lang.Class) (/opt/gcc-3.4.1/lib/libgcj.so.5.0.0)
at _Jv_WaitForState(java.lang.Class, int) (/opt/gcc-
3.4.1/lib/libgcj.so.5.0.0)
at java.lang.VMClassLoader.linkClass0(java.lang.Class) (/opt/gcc-
3.4.1/lib/libgcj.so.5.0.0)
at java.lang.VMClassLoader.resolveClass(java.lang.Class) (/opt/gcc-
3.4.1/lib/libgcj.so.5.0.0)
at java.lang.Class.initializeClass() (/opt/gcc-3.4.1/lib/libgcj.so.5.0.0)
at java.lang.Class.newInstance() (/opt/gcc-3.4.1/lib/libgcj.so.5.0.0)
at org.apache.xerces.util.ObjectFactory.newInstance(java.lang.String,
java.lang.ClassLoader) (Unknown Source)
at org.apache.xerces.util.ObjectFactory.createObject(java.lang.String,
java.lang.String, java.lang.String) (Unknown Source)
at org.apache.xerces.util.ObjectFactory.createObject(java.lang.String,
java.lang.String) (Unknown Source)
at org.apache.xerces.parsers.DOMParser.DOMParser() (Unknown Source)
at xmlvalidator.xmlvalidator01.parseDocument(java.lang.String)
(/home/mwteng/jbproject/alpha/src/xmlvalidator/xmlvalidator01.java:75)
at xmlvalidator.xmlvalidator01.xmlvalidator01(java.lang.String)
(/home/mwteng/jbproject/alpha/src/xmlvalidator/xmlvalidator01.java:45)
at Main.xml(java.lang.String)
(/home/mwteng/jbproject/alpha/src/Main.java:31)
at Main.main(java.lang.String[])
(/home/mwteng/jbproject/alpha/src/Main.java:37)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16653
More information about the Gcc-bugs
mailing list