
== [1.16] (2014-04-29) ==

* clsp_fix: Add java.lang.reflect.Array with fixed createMultiArray.
* clsp_fix: jcl.c: Fix pointer conversion GCC warnings in NewRawDataObject/GetRawData.

* goclsp/vm: Class.java (internalGetField): Fix getDeclaredFieldVMField call.
* goclsp/vm: Fix termination status in VMThread.
* goclsp/vm: Move VM vendor-specific names from jcgoprop.c to VMVendorInfo.
* goclsp/vm: Move VMSystemProperties JVM property fields to VMVendorInfo.
* goclsp/vm: SystemProperties: Add java.vm.vendor.url; change java.vendor to Classpath.
* goclsp/vm: VMSystemProperties (preInitJavaInfo): Move values to fields.
* goclsp/vm: VMThread: Check STATE_TERMINATED in detachInner instead of detachThread0X.

* include: Allow to detach main thread from JNI.
* include: Eliminate GCC 'missing initializer' warning for jcgo_globData.
* include: Eliminate redundant check of jcgo_newObject result for null.
* include: Enable nanosecond-precision for VMThread.wait0.
* include: Fix JCGO_CLINIT_TRIG definition (for JCGO_PARALLEL mode).
* include: Fix JNI DeleteWeakGlobalRef for the case when invalid argument is passed.
* include: Fix JNI GetDirectBufferAddress/Capacity for direct buffers.
* include: Fix JNI GetDirectBufferAddress/Capacity for non-direct-buffer argument.
* include: Fix JNI GetStringUTFChars for the case of allocation failure.
* include: Fix POSIX EVENT_TIMEDWAIT to prevent Thread sleep interruption by signal.
* include: Fix SEGV in JNI NewObjectArray if cannot allocate array.
* include: Fix VMClass.initialize0 for multi-core targets.
* include: Fix VMField.get0() implementation.
* include: Fix VMField.set/get for volatile and final fields.
* include: Fix VMThrowable.exit0 (do not set jcgo_initialized to -1).
* include: Fix jcgo_JniFindClass (do not perform class initialization).
* include: Implement JNI GetObjectRefType.
* include: JniNewString[UTF]: Fix for null chars argument.
* include: New macro (JCGO_MONOTWAIT) to use monotonic clock in pthread timed-wait.
* include: Optimize JNI ReleaseData, Delete[Weak]GlobalRef (for JCGO_PARALLEL mode).
* include: Speed-up JCGO_CLINIT_TRIG for non-parallel multi-threaded mode.
* include: Upgrade JNI support to version 1.6.
* include: Use GCC __builtin_expect.
* include: Use JCGO_EXPECT_FALSE/TRUE for conditional expressions.
* include: include/boehmgc: Update to BDWGC v7.4.0.

* jtrsrc: Assignment.java (processOutput): Fix outputFloatCast calls.
* jtrsrc: ClassDefinition.java (markForInstanceOf): Fix for Cloneable and Serializable.
* jtrsrc: Names.java (reservCNameArr): Add jobjectRefType; add "JNIEnv_", "JavaVM_".

* native: Eliminate 'unused argument' GCC warnings (define JCGO_UNUSED_VAR macro).
* native: Eliminate Clang warning in jcgo_lseek and VMFile_length.
* native: Fix a typo in JCGO prefix of JCGO_CURTIME_x.
* native: JnuStringSizeOfPlatform: Eliminate GCC warning in case of MB_LEN_MAX is 1.
* native: JnuStringSizeOfPlatform: Fix cast not to break strict aliasing rules.
* native: Recognize JCGO_TIMEALLOWNEG (new macro).

* minihdr/win/windef.h: Fix 'LONG' definition (to be visible from included winnt.h).

* vm_str: String (encodeValue): Fix 'hasArray' case condition.
* vm_str: String (toUpperCase): Remove unused 'ch' variable.
* vm_str: StringBuffer: Fix append(char[]): add synchronized.
* vm_str: StringBuilder: Replace append(StringBuilder) with append(StringBuffer sBuf).

* contrib: New folder.
* examples: Move simple *.java test files to 'simple' subfolder.
* goclsp: Adjust license terms of some files (change from GPL to Classpath).
* mkjcgo, sunawt/mklibs: Add .sh scripts to build JCGO Java and C code.
* tests: Remove .bat scripts.


== [1.14] (2012-06-16) ==

* Add "tests" folder containing scripts for JCGO testing.
* Add FAQ.txt file.
* README: Add information about libatomic_ops package, about launching jcgo.jar, update SWT support section.
* README: Refine JNIEXPORT/CALL_INVOKE documentation.
* Samples: Add samples for iPhone/iPad, Android NDK; update libgcmt.a build command.
* examples: add compilation information for TuxGuitar.
* examples: jclPPro10_ui: fix Util.imageAllocated; embed font properties into class.

* goclsp/clsp_fix: Add Collections.emptySet/List/Map methods.
* goclsp/clsp_fix: Check read access permission in File.isHidden().
* goclsp/clsp_fix: Disable compression support in GNU SSLSocket (as it does not work properly).
* goclsp/clsp_fix: Do not throw exception if spinner or poll thread of GNU crypto CSPRNG cannot be created.
* goclsp/clsp_fix: Fix InflaterHuffmanTree.
* goclsp/clsp_fix: Fix PlainSocketImpl.setOption() to allow setting timeout even before native socket created.
* goclsp/clsp_fix: Fix regex Matcher.find().
* goclsp/noopmain: Add dummy (empty) main class to JCGO source path for convenience.

* include (c_runtime): Allow alternative JNIEXPORT/JNICALL for Java Invocation API.
* include (c_runtime): Fix ATTRIBMALLOC usage for MS VC.
* include (c_runtime): Fix jcgo_pDataFirstSym definition.
* include (c_runtime): Recognize JCGO_FASTMATH new macro to speed-up VMMath native methods and jcgo_fmod.
* include (c_runtime): Recognize JCGO_FPFAST new macro to speed-up floating-point division and comparison operations.
* include (c_runtime): Support obtaining availableProcessors() via GC_get_parallel().
* include/boehmgc: Update from gc-7.3alpha2

* jtrsrc: Main.java: Code refactoring of main().
* jtrsrc: Reformat code in Eclipse IDE; resolve warnings reported by Eclipse.

* native: Prevent C compiler "unused result" warning for mbtowc/wctomb.
* native: Recognize new JCGO_UTFWCTOMB macro (useful for Android NDK).

* reflgen: Add support SqliteJDBC library.
* reflgen: Fix swt.dat for SWT v3.7M3 (add missing some Callback entries).
* reflgen: Update swt.dat reflection to SWT v3.8M2.


== [1.12] (2011-08-20) ==

* The first Open Source release of JCGO.
