From 10b905f1eab24dd18a023aaa3681a3673866de10 Mon Sep 17 00:00:00 2001 From: Per Bothner Date: Wed, 5 May 1999 14:09:08 -0700 Subject: [PATCH] verify.c (verify_jvm_instructions): Better error messages. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit � * verify.c (verify_jvm_instructions): Better error messages. From-SVN: r26788 --- gcc/java/verify.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gcc/java/verify.c b/gcc/java/verify.c index 4b34c4717d3..8779bd02674 100644 --- a/gcc/java/verify.c +++ b/gcc/java/verify.c @@ -750,8 +750,12 @@ verify_jvm_instructions (jcf, byte_ops, length) pop_type (field_type); if (! is_static) { + int clindex = COMPONENT_REF_CLASS_INDEX (¤t_jcf->cpool, + index); + tree self_type = get_class_constant (current_jcf, clindex); /* Defer actual checking until next pass. */ - pop_type (ptr_type_node); + if (pop_type_0 (self_type) == NULL_TREE) + VERIFICATION_ERROR ("incorrect type for field reference"); } if (! is_putting) push_type (field_type); @@ -1283,6 +1287,7 @@ verify_jvm_instructions (jcf, byte_ops, length) message = "program counter out of range"; goto verify_error; verify_error: - error ("verification error at PC=%d: %s", oldpc, message); + error ("verification error at PC=%d: %s", oldpc); + error (message); return 0; } -- 2.30.2