[Kaffe] reflection bug found, test case included

Archie Cobbs archie at whistle.com
Sun Mar 21 21:46:48 PST 1999


Moses DeJong writes:
> I have run into an interesting reflection bug in Kaffe. I do not have time
> to track this one down today so I am going to post the test case in case
> someone wants to track it down. I was running on a solaris sparc
> (BigEndian) system when I got these results.

Mo-

Please try the patch below. This is sortof a guess because I didn't
fully investigate the problem, but this may fix it for you. Either
way please report back as I don't have a big endian machine handy.
Also, try the same thing with boolean and char if you can.

Thanks,
-Archie

___________________________________________________________________________
Archie Cobbs   *   Whistle Communications, Inc.  *   http://www.whistle.com


Index: support.c
===================================================================
RCS file: /home/cvspublic/kaffe/kaffe/kaffevm/support.c,v
retrieving revision 1.25
diff -u -r1.25 support.c
--- support.c	1999/02/13 19:08:18	1.25
+++ support.c	1999/03/22 06:27:27
@@ -286,12 +286,28 @@
 	for (; *sig != ')'; i++, sig++) {
 		call.calltype[i] = *sig;
 		switch (*sig) {
-		case 'I':
 		case 'Z':
+			call.callsize[i] = 1;
+			in[i].i = args[i].z;
+			break;
+
 		case 'S':
+			call.callsize[i] = 1;
+			in[i].i = args[i].s;
+			break;
+
 		case 'B':
+			call.callsize[i] = 1;
+			in[i].i = args[i].b;
+			break;
+
 		case 'C':
+			call.callsize[i] = 1;
+			in[i].i = args[i].c;
+			break;
+
 		case 'F':
+		case 'I':
 			call.callsize[i] = 1;
 			in[i] = args[i];
 			break;




More information about the kaffe mailing list