# Friday, 16 December 2011
« IKVM.NET 7.0 Released | Main | Accessibility, Visibility and Transparen... »
New Development Snapshot

I've been doing some cleanup and refactoring and in the process removed some limitations and fixed a bunch of corner cases.

Changes:

  • Updated version to 7.1.4366.0.
  • Fixed Class.getDeclaredClasses() to throw correct exception when one on the inner classes cannot be loaded.
  • Removed class name length limitation.
  • Split ikvmc compilation into three passes to support classes that extend a class nested inside itself.
  • Include copyright and metadata in IKVM.OpenJDK.Tools.dll. Part of patch #3458997.
  • Added AssemblyInformationalVersionAttribute to OpenJDK assemblies (to set the "Product Version"). Part of patch #3458997.
  • When casting arguments we should use the actual method parameter types, instead of the call site types (which can differ in the case of unloadable types (with crazy class loader trickery)).
  • Unloadable types can't violate loader constraints.
  • Made override stub generation more consistent.
  • Generate override stub for miranda method, when necessary.
  • Fixed ikvcm to not crash when ikvmc -resource: or -externalresource: option doesn't contain an = sign.
  • Fixed unloadable corner case (that can only be generated by playing weird class loader tricks).
  • Verifier bug fix. Removed incorrect check for uninitialized objects on backward branch.
  • IKVM.Reflection: Support setting an invalid culture using AssemblyBuilder.__SetAssemblyCulture().
  • IKVM.Reflection: AssemblyCultureAttribute should not influence the LCID of the version info resource.
  • IKVM.Reflection: Removed static Create() from __StandAloneMethodSig and added Universe.MakeStandAloneMethodSig().

Binaries available here: ikvmbin-7.1.4366.zip

Friday, 16 December 2011 10:07:11 (W. Europe Standard Time, UTC+01:00)  #    Comments [1]