Bug 17819 - ICE in build_java_check_indexed_type
ICE in build_java_check_indexed_type
Status: NEW
Product: gcc
Classification: Unclassified
Component: java
: P2 normal
: ---
Assigned To: Not yet assigned to anyone
: ice-on-valid-code
Depends on:
  Show dependency treegraph
Reported: 2004-10-03 22:55 UTC by Richard Henderson
Modified: 2006-04-03 17:28 UTC (History)
2 users (show)

See Also:
Known to work:
Known to fail:
Last reconfirmed: 2005-02-02 13:36:08

test case (689.45 KB, application/x-gzip)
2004-10-03 22:55 UTC, Richard Henderson

Note You need to log in before you can comment on or make changes to this bug.
Description Richard Henderson 2004-10-03 22:55:19 UTC
gcj -c --classpath=jakarta-poi.jar joone-engine.jar -o joone-engine.o

with the files in the attached tar file.  The same crash exists since
at least gcc 3.2.

In 4.0 there's an additional buglet in that the filename in the error
message has been corrupted; it renders as 8 open squares in my terminal.
Prior versions printed the filename properly.
Comment 1 Richard Henderson 2004-10-03 22:55:52 UTC
Created attachment 7274 [details]
test  case
Comment 2 Andrew Pinski 2004-10-03 23:24:42 UTC
Comment 3 Ranjit Mathew 2005-02-02 13:36:06 UTC
The simple workaround is to use the new BC-ABI (-findirect-dispatch).

I do see the abort(), but the filenames are printed properly (current mainline).
Comment 4 Tom Tromey 2006-04-03 17:28:43 UTC
I happened to try this out this weekend.
I don't see an ICE in build_java_check_indexed_type
(with 4.0, 4.1 and head).  Now I see:

+ gcj -c --classpath=jakarta-poi.jar joone-engine.jar -o joone-engine.o
org/joone/log/Log4JLogger.java: In class 'org.joone.log.Log4JLogger':
org/joone/log/Log4JLogger.java: In method 'org.joone.log.Log4JLogger.debug(java.lang.Object)':
org/joone/log/Log4JLogger.java:25: error: cannot find file for class org.apache.log4j.Logger
org/joone/log/Log4JLogger.java:25: error: class 'org.apache.log4j.Logger' has no method named 'debug' matching signature '(Ljava/lang/Object;)V'
org/joone/log/Log4JLogger.java: In method 'org.joone.log.Log4JLogger.debug(java.lang.Object,java.lang.Throwable)':
org/joone/log/Log4JLogger.java:29: error: cannot find file for class org.apache.log4j.Logger
org/joone/log/Log4JLogger.java:29: error: class 'org.apache.log4j.Logger' has no method named 'debug' matching signature '(Ljava/lang/Object;Ljava/lang/Throwable;)V'
org/joone/log/Log4JLogger.java:29: internal compiler error: in expand_expr_real_1, at expr.c:6552