As promised a while ago, here is the first IKVM snapshot based on the GNU Classpath generics branch. Note that this does not indicate a commitment to base the next release on the generics branch. I will only start basing my releases on the generics branch when GNU Classpath developer snapshots for the generics branch will be made. I don't know of there is any plan to do so at this time.
New in this release is the ability to reflect on the Java 1.5 generic type information. Based on these new APIs ikvmstub can now roundtrip generic type information (remember, this is Java generics, not .NET generics) and thanks to Stuart's work on Japi we can now get a status of the GNU Classpath library and at the same time test the IKVM/Classpath reflection infrastructure and ikvmstub. Results are available here.
The IKVM source + binaries snapshot is available here. This was build by specifying the “generics” target. Some of the changes in this version are only available when you build this target.
- Method.getModifiers() on ikvmc compiled code didn't return Modifier.SYNCHRONIZED for static synchronized methods.
- Added support ceq IL instruction to remapper.
- Added adhoc support for .NET type signatures in <call /> remapper instruction.
- Improved build file support for building generics branch.
- Added SignatureAttribute to various map.xml classes and methods.
- Updated SharpZipLib to 0.84.
- Added .NET attributes and support for capturing Java Signature and EnclosingMethod attributes.
- Added support for mapping Java varargs methods onto .NET vararg methods (and v.v.).
Changes (“generics” build target only):
Implemented support for 1.5 generic reflection methods.
Added support to ikvmstub for roundtripping (Java) generics, enums, annotations, varargs and synthetic marker.