This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Patch for review: java.lang.Class - signers issue
- From: Michael Koch <konqueror at gmx dot de>
- To: java-patches at gcc dot gnu dot org
- Date: Wed, 3 Dec 2003 16:01:36 +0100
- Subject: Patch for review: java.lang.Class - signers issue
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi list,
I wrote the attached two patches to make it possible to compile
classpath with gcj again. I see these patches as start for a
discussion of this problem. These patches fix PR/12768 which is a
regression from 3.3.
Michael
- --
Homepage: http://www.worldforge.org/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)
iD8DBQE/zfrUWSOgCCdjSDsRAicgAJ4/Y7EArP5/RHOJLu9lEGQPvzdbNwCgh6e1
d5hAX0kC+Gwk3VqBmJhqwHM=
=z7j0
-----END PGP SIGNATURE-----
Index: ChangeLog
===================================================================
RCS file: /cvs/gcc/gcc/ChangeLog,v
retrieving revision 1.833
diff -u -b -B -r1.833 ChangeLog
--- ChangeLog 17 Nov 2003 14:21:54 -0000 1.833
+++ ChangeLog 3 Dec 2003 13:46:30 -0000
@@ -1,3 +1,10 @@
+2003-12-03 Michael Koch <konqueror@gmx.de>
+
+ * gcc/java/class.c (make_class_data):
+ Push field value to 'hack_signers' instead of 'signers'.
+ * gcc/java/decl.c (java_init_decl_processing):
+ Push field 'hack_signers' instead of 'signers'.
+
2003-11-17 Stan Cox <scox@redhat.com>
* MAINTAINERS: Add myself as iq2000 port maintainer.
Index: gcc/java/class.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/java/class.c,v
retrieving revision 1.172
diff -u -b -B -r1.172 class.c
--- gcc/java/class.c 24 Oct 2003 09:29:40 -0000 1.172
+++ gcc/java/class.c 3 Dec 2003 13:46:32 -0000
@@ -1568,7 +1568,7 @@
PUSH_FIELD_VALUE (cons, "idt", null_pointer_node);
PUSH_FIELD_VALUE (cons, "arrayclass", null_pointer_node);
PUSH_FIELD_VALUE (cons, "protectionDomain", null_pointer_node);
- PUSH_FIELD_VALUE (cons, "signers", null_pointer_node);
+ PUSH_FIELD_VALUE (cons, "hack_signers", null_pointer_node);
PUSH_FIELD_VALUE (cons, "chain", null_pointer_node);
FINISH_RECORD_CONSTRUCTOR (cons);
Index: gcc/java/decl.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/java/decl.c,v
retrieving revision 1.171
diff -u -b -B -r1.171 decl.c
--- gcc/java/decl.c 18 Nov 2003 03:57:08 -0000 1.171
+++ gcc/java/decl.c 3 Dec 2003 13:46:36 -0000
@@ -728,7 +728,7 @@
PUSH_FIELD (class_type_node, field, "idt", ptr_type_node);
PUSH_FIELD (class_type_node, field, "arrayclass", ptr_type_node);
PUSH_FIELD (class_type_node, field, "protectionDomain", ptr_type_node);
- PUSH_FIELD (class_type_node, field, "signers", ptr_type_node);
+ PUSH_FIELD (class_type_node, field, "hack_signers", ptr_type_node);
PUSH_FIELD (class_type_node, field, "chain", ptr_type_node);
for (t = TYPE_FIELDS (class_type_node); t != NULL_TREE; t = TREE_CHAIN (t))
FIELD_PRIVATE (t) = 1;
Index: ChangeLog
===================================================================
RCS file: /cvs/gcc/gcc/libjava/ChangeLog,v
retrieving revision 1.2412
diff -u -b -B -r1.2412 ChangeLog
--- ChangeLog 2 Dec 2003 22:26:44 -0000 1.2412
+++ ChangeLog 3 Dec 2003 12:45:39 -0000
@@ -1,3 +1,9 @@
+2003-12-03 Michael Koch <konqueror@gmx.de>
+
+ * java/lang/Class.h (hack_signers): Renamed signers to hack_signers.
+ * java/lang/natClass.cc (getSigners): Likewise.
+ (setSigners): Likewise.
+
2003-12-02 Mohan Embar <gnustuff@thisiscool.com>
* configure.in: Added new MinGW-specific configure flag
Index: java/lang/Class.h
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/lang/Class.h,v
retrieving revision 1.62
diff -u -b -B -r1.62 Class.h
--- java/lang/Class.h 24 Oct 2003 09:29:42 -0000 1.62
+++ java/lang/Class.h 3 Dec 2003 12:45:39 -0000
@@ -446,7 +446,7 @@
// Security Domain to which this class belongs (or null).
java::security::ProtectionDomain *protectionDomain;
// Signers of this class (or null).
- JArray<jobject> *signers;
+ JArray<jobject> *hack_signers;
// Used by Jv_PopClass and _Jv_PushClass to communicate with StackTrace.
jclass chain;
};
Index: java/lang/natClass.cc
===================================================================
RCS file: /cvs/gcc/gcc/libjava/java/lang/natClass.cc,v
retrieving revision 1.73
diff -u -b -B -r1.73 natClass.cc
--- java/lang/natClass.cc 14 Nov 2003 01:48:29 -0000 1.73
+++ java/lang/natClass.cc 3 Dec 2003 12:45:39 -0000
@@ -1502,13 +1502,13 @@
JArray<jobject> *
java::lang::Class::getSigners()
{
- return signers;
+ return hack_signers;
}
void
java::lang::Class::setSigners(JArray<jobject> *s)
{
- signers = s;
+ hack_signers = s;
}
// Functions for indirect dispatch (symbolic virtual binding) support.