re PR libgcj/18868 (Interface containing anonymous class breaks gij)

PR libgcj/18868:
	* include/jvm.h (_Jv_Linker::find_field): Declare.
	(_Jv_Linker::find_field_helper): Likewise.
	* link.cc (find_field_helper): New method.
	(find_field): Likewise.
	(resolve_pool_entry): Use it.  Throw NoSuchFieldError when field
	not found.
	(link_symbol_table): Use find_field.

From-SVN: r93151
This commit is contained in:
Tom Tromey 2005-01-10 19:21:46 +00:00 committed by Tom Tromey
parent 8a7f33c709
commit 0006c7b00d
3 changed files with 134 additions and 154 deletions

View file

@ -1,6 +1,6 @@
// jvm.h - Header file for private implementation information. -*- c++ -*-
/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation
/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation
This file is part of libgcj.
@ -250,6 +250,9 @@ namespace gcj
class _Jv_Linker
{
private:
static _Jv_Field *find_field_helper(jclass, _Jv_Utf8Const *, jclass *);
static _Jv_Field *find_field(jclass, jclass, _Jv_Utf8Const *,
_Jv_Utf8Const *);
static void prepare_constant_time_tables(jclass);
static jshort get_interfaces(jclass, _Jv_ifaces *);
static void link_symbol_table(jclass);