- Original Message -
On Sat, 2013-03-09 at 12:26 +0200, Pekka Enberg wrote:
On Sat, Mar 09, 2013 at 11:36:13AM +0200, Pekka Enberg wrote:
Type parametrize uses of generic types in
AnnotationInvocationHandler.
On Sat, Mar 9, 2013 at 12:09 PM, Mark Wielaard m...@klomp.org
wrote:
Generally we avoided generics for VM interface files, so VMs can
ignore
any modern class format extensions in their bootstrap classes.
It shouldn't make any difference to the VM classloader because of
type
erasure. What am I missing?
There are some other small changes in the class file format, class
access flags, attributes. But the main reason was source
compatibility.
It was convenient if the VM and VM interface classes could be build
with
any java language compiler out there (even these days only javac and
ecj
support 1.5+ fully) since they were often build independently from
the
rest of the core classes during bootstrapping of the VM. And keeping
the
core class VM interface as simple as possible, since some of the VM
interface classes could be overridden by a VM is easier when not
using
generics.
Anyway, I think this class isn't really a VM interface class, so it
should be fine.
I guess I am just not a big fan of using fancy new (haha, it is 2013
Mark...) language features unless really necessary.
I'd rather we left this until after the next release and updated all VM
interfaces to 1.5 level at the same time. That's why I've deliberately
avoided updating them so far.
Take 0.99.1 as being the watershed for pre-1.5 VM interfaces.
Cheers,
Mark
--
Andrew :)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07