re PR java/29013 (gcj generates a MetalLookAndFeel class that fails cacao's verifier)

gcc/java
	PR java/29013:
	* jcf-write.c (generate_bytecode_insns) <CALL_EXPR>: Always note
	the push of the called method's return result.
libjava
	PR java/29013:
	* testsuite/libjava.lang/PR29013.out: Likewise.
	* testsuite/libjava.lang/PR29013.java: New file.

From-SVN: r116902
This commit is contained in:
Tom Tromey 2006-09-12 19:00:48 +00:00 committed by Tom Tromey
parent ed08fcf6fc
commit f8248aaa3b
5 changed files with 28 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2006-09-12 Tom Tromey <tromey@redhat.com>
PR java/29013:
* jcf-write.c (generate_bytecode_insns) <CALL_EXPR>: Always note
the push of the called method's return result.
2006-09-12 Tom Tromey <tromey@redhat.com>
* jvspec.c (lang_specific_driver): Read spec file even if

View File

@ -2651,10 +2651,14 @@ generate_bytecode_insns (tree exp, int target, struct jcf_partial *state)
if (TREE_CODE (f) != VOID_TYPE)
{
int size = TYPE_IS_WIDE (f) ? 2 : 1;
/* Always note the push here, so that we correctly
compute the required maximum stack size. */
NOTE_PUSH (size);
if (target == IGNORE_TARGET)
emit_pop (size, state);
else
NOTE_PUSH (size);
{
emit_pop (size, state);
NOTE_POP (size);
}
}
break;
}

View File

@ -1,3 +1,9 @@
2006-09-12 Tom Tromey <tromey@redhat.com>
PR java/29013:
* testsuite/libjava.lang/PR29013.out: Likewise.
* testsuite/libjava.lang/PR29013.java: New file.
2006-09-12 Tom Tromey <tromey@redhat.com>
* testsuite/libjava.jacks/jacks.exp (load_gcc_lib): Removed.

View File

@ -0,0 +1,9 @@
public class PR29013 {
public static int result() { return 5; }
public static void computeResult() { result(); }
public static void main(String[] args) {
computeResult();
}
}