Fixed the remaining known OpenJDK 7 issues, apart from method overriding, which finally made it into the JVM spec (section 5.4.5), but it's not clear yet what the actual behavior should be. It's a little ridiculous, but almost 16 years after the release of Java 1.0 a fundamental part of the JVM is still poorly documented and implemented.
- Added ikvmc -platform:arm and -platform:anycpu32bitpreferred options.
- Bug fix. Make sure sun.misc.Launcher is initialized before setting a security manager, because Launcher assumes there is no security manager yet.
- Added ikvmstub -forwarders option to support ".NET Core profile" assemblies.
- Implemented com.sun.security.auth.module.NTSystem.getCurrent().
- Fixed Throwable.fillInStackTrace() to respect non-writeable stack trace.
- Fixed Throwable deserialization issues introduced with OpenJDK 7.
- Fixed Throwable.getSuppressed() to return a global empty array (OpenJDK tests depend on that).
- Fixed java.lang.ProcessImpl pipe to flush writes.
- Fixed java.lang.ProcessImpl.openForAtomicAppend() to actually use atomic append.
- Fixed java.lang.ProcessImpl to clear out the existing environment variables when an envblock is specified.
- Implemented java.lang.ProcessImpl redirectErrorStream for case where stdout is not also redirected.
- Fixed core library build issue. java.lang.AutoCloseable.close() method may be used before it has been linked.
- Bug fix. When calling a final method on a remapped type we can't call the instance method in the remapped type, but we have to call the instancehelper instead.
- Starting with class file version 51 the <clinit> methods need to be static.
- Added java.nio.file security manager checks.
- Added workaround for another x64 JIT bug.
- IKVM.Reflection: Added .NET 4.5 metadata enum values.
- IKVM.Reflection: Added support for PortableExecutableKinds.Preferred32Bit.
- IKVM.Reflection: Added support for process architecture in assembly flags.
Binaries available here: ikvmbin-7.0.4321.zip