[kaffe] [patch] java.lang.reflect merge with pocketlinux kaffe

Dalibor Topic robilad@yahoo.com
Mon, 29 Apr 2002 02:18:38 -0700 (PDT)


--0-300490783-1020071918=:11619
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hi,

I've created a patch that merges the good parts of
pockelinux kaffe's implementation of the
java.lang.reflect package with kaffe.org's tree. So
you might ask: Why would we want to do it?

Pro:
* It moves a lot of code from C libraries to Java
libraries, making it easier to comprehend & hack on
for occassional bug fixing.

* It makes the codebase cleaner, as array out of
bounds exceptions, for example, are handled
automatically by the VM, and need not to be
specifically checked against in the C code.

Contra:
you tell me ;)

I'd like to see it tested on as many systems as
possible, since it touches very sensitive parts of the
libraries. I'm looking forward to your bug reports.

cheers,

dalibor topic

P.S: no detailed ChangeLog entry this time, as it is
just "merged with pocketlinux kaffe, with a couple of
value widening fixes to pocketlinux codebase".

__________________________________________________
Do You Yahoo!?
Yahoo! Health - your guide to health and wellness
http://health.yahoo.com
--0-300490783-1020071918=:11619
Content-Type: application/octet-stream; name="rf.patch.bz2"
Content-Transfer-Encoding: base64
Content-Description: rf.patch.bz2
Content-Disposition: attachment; filename="rf.patch.bz2"

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
hYWFhYWHDIZCqoo+hMkMkOiH/O7TZIYZZIlpayTMyoVQuZ+96vU3hj5RA6ET
BO45EshzAPc5nTpAeCEVYABEEqKoSHcKD1PapY4iHSrIrnMbhOVLBSPFDi11
F5WmJIb94XB/eRG2F+n8shmVxpate8uPlcvtwz50hPaI+ibbfmIPJ54eSw8/
ZGwtkp0N5kFES3gNEwkDOvvOhFLW2UlxNGPYHJNAssILy+BPeWHMnToQ9Q+k
1qGJ9+KUaofU+cDrtIutEIcPqHsOo7ynnDdmMRQiQgFUgtZRNwG8EDWtsI4P
eNwoMURkBPyFBr/FAXMlHi9wewy6D0KHoPLkeP3pFDB3m7zGY/YoRUNwZzOZ
HhgoNessoYKLGE4a06AMCAdtjeBIsHQN6UpYHzCTigf3QtCkP1Cv+r/h8MZy
elrJPqNsqQ4vmObdQ1ue8uNgpuUUsgm9QzH9I5/sj9KY8+lI+/ZlJX02yrLV
tvmc584PZ0m5xHyp63PTNs2bY22zZ1n+y+SHyQSX4cBzBwmDMMxG3p7eerJn
M2VZwhAU3myTiJoayixDosTRlx0xmnHWRwckbjmnp0xyuFZjrrKxQwIsRjty
Sj9ogLw20KqbS+pV5YokxGJbBZFxvMcaxL3CfvA9p6QJESIkSdyLTGpLYgsS
XjqROoWG42hDbf+e2NixRoI5/F1cXfW38f9nb49+X9i1dVJjvJ6YRt8mog3j
7WTaIbQ2gjRwwQNpxIwuAUEBEYfgJUuEI/w6H0JFX7FWfCREREXwXG9ea+FW
70EeRBu4cXUiScdrVlWVZVlWVGEYRs9M8gkOvsBaE5/uvUAQ+HXefYp6eQFL
bPX8kPiD2lyp9OkTR9EBpBHeoLMJBg0dXBn7XHeQn1EKge7k+1FBrUkckMoL
IIvgUV0cD0AAnKgC/gIKIhx4NuFhE+slIP5n4lRt8F6oS+YEQCMtJwLmH6z2
OPdJjjRD/gE2hr8EJlmHQO57PiQOZA3nHBDxaFANSheXUiNChfryQXYC/kKk
hInhJ02giODi+KSMb5DDMi1CHHs9PUAdEFu5zQIhXiInEBDuSdpvRQD8glCQ
6fJ6kEHjEI+u2L6DLnYCw2F3/zoFCJaARQ5jeKqP4BEkmq2A1mVVGpS1+Rtr
yan08yqyAi5ZvMIB11DOC2tygRZEhB1Kbl5OYcpI04SostRYOAsOELg3vlWJ
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
hZlA

--0-300490783-1020071918=:11619--