aboutsummaryrefslogtreecommitdiff
path: root/libjava/gcj
diff options
context:
space:
mode:
authorRobert Schuster <robertschuster@fsfe.org>2006-02-01 13:40:05 +0000
committerRobert Schuster <rschuster@gcc.gnu.org>2006-02-01 13:40:05 +0000
commitc1a9321f29f76325f6fcf278c60678dcf9c71cde (patch)
tree331725f44321f544a0c7d62882b65627f0e43522 /libjava/gcj
parent168b93e9e32b3b6e95b7e3f149889298a051a935 (diff)
downloadgcc-c1a9321f29f76325f6fcf278c60678dcf9c71cde.zip
gcc-c1a9321f29f76325f6fcf278c60678dcf9c71cde.tar.gz
gcc-c1a9321f29f76325f6fcf278c60678dcf9c71cde.tar.bz2
2006-02-01 Robert Schuster <robertschuster@fsfe.org>
* link.cc: (_Jv_Linker::find_field_helper): Added checks. (_Jv_Linker::find_field): Use exception swallowing class resolution and added early return. (_Jv_ThrowNoClassDefFoundErrorTrampoline): New function. (_Jv_Linker::link_symbol_table): Use exception swallowing class resolution, added ffi_closure installation routine, use _Jv_ThrowNoClassDefFoundError for missing static method. (_Jv_Linker::ensure_class_linked): Added string check which does not trigger class resolution. * java/lang/natClassLoader.cc: (_Jv_FindClassNoException): New method. * java/lang/Class.h: (_Jv_FindClassNoException): New method declaration. * include/jvm.h: (_Jv_FindClassNoException): New method declaration. (_Jv_FindClassFromSignatureNoException): New method declaration. * prims.cc: (_Jv_FindClassFromSignatureNoException): New method. * gcj/javaprims.h: (_Jv_equalsUtf8Classname): New method declaration. (_Jv_isPrimitiveOrDerived): Dito. * prims.cc: (_Jv_equalsUtf8Classnames): New method. (_Jv_isPrimitiveOrDerived): New method. * verify.cc: (ref_intersection::equals): Use new classname comparison method. (type::compatible): Use new classname comparison method. Added check whether LHS' type is java.lang.Object . (type::resolve): Added new optional debug message and simplified if-expression. (type::to_array): Added codepath that generates an array type without resolving the element type. From-SVN: r110474
Diffstat (limited to 'libjava/gcj')
-rw-r--r--libjava/gcj/javaprims.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/libjava/gcj/javaprims.h b/libjava/gcj/javaprims.h
index 99fc7a3..c4f815f 100644
--- a/libjava/gcj/javaprims.h
+++ b/libjava/gcj/javaprims.h
@@ -566,6 +566,9 @@ class _Jv_Utf8Const
friend jboolean _Jv_equalUtf8Consts (const _Jv_Utf8Const*, const _Jv_Utf8Const *);
friend jboolean _Jv_equal (_Jv_Utf8Const*, jstring, jint);
friend jboolean _Jv_equaln (_Jv_Utf8Const*, jstring, jint);
+ friend jboolean _Jv_equalUtf8Classnames (const _Jv_Utf8Const*,
+ const _Jv_Utf8Const*);
+ friend jboolean _Jv_isPrimitiveOrDerived (const _Jv_Utf8Const*);
friend _Jv_Utf8Const *_Jv_makeUtf8Const (char*, int);
friend _Jv_Utf8Const *_Jv_makeUtf8Const (jstring);
friend jstring _Jv_NewStringUtf8Const (_Jv_Utf8Const*);