JNAerator Changelog
What's new in JNAerator 0.12 Snapshot
Jun 27, 2013- Added support for JNA 3.5.1 (implement getFieldOrder in all structs, see issue #384)
- Dropped support for bit fields in JNA structs (users should implement bit manipulation logic manually or use BridJ).
- Dropped old shared library (DLL, Mach-O) scanning code, superseded by dyncall/dynload and BridJ's demanglers.
- Fixed parsing of unsigned long constants (issue #362, issue #374)
- Fixed generation of raw bindings for callback return types (issue #386)
- Fixed generation of raw bindings with varargs (issue #386, patch contributed by twitwi!)
- Fixed handling of library names with hyphens (issue #260)
- Fixed support of identifiers with Object method names (issue #375)
- Fixed support of enums inside objc classes (issue #370)
- Fixed parsing of `@optional` and `@required` objective-c annotations (issue #369)
- Fixed UTF32Char, added VOID, CHAR and byte as predefined types (issue #363)
New in JNAerator 0.11 (Mar 4, 2013)
- Fixed infinite loops in simple typedefs (issue #288)
- Fixed some -beautifyNames cases (issue #315)
- Fixed parsing of some C++ templates (including template constructors)
- Fixed "long long" regression
- Fixed JNAeratorMojo.config documentation (issue #330)
- Fixed long / long long / short pointer function return types
- Fixed generation of BridJ C++ constructors
- Fixed enum names that collide with Java identifiers (issue #334)
- Added raw bindings generation for BridJ
- Added parsing of 'using' C++ statements
- Added TypeRef.resolvedJavaIdentifier
- Added parser support for `complex double` (cf. complex.h)
- Added test for BridJ raw signatures
- Moved to ECJ 3.7.2
- Moved to JNA 3.4.0
- Refactored type resolution and conversion
- Rationalized CompilerUtils classpath + bootclasspath
- Removed C++ name mangling feature for JNA target runtime (was simplistic anyway)
New in JNAerator 0.9.8 (Jul 7, 2011)
- Better COM JNAeration for BridJ (now supports and converts __declspec(uuid("xxx")) attributes !)
- Accept some ill-formed constructs (mismatched extern "C" { ... }) for better cross-files parsing
- Fixed JNAeration of nested dependent constants defines
- Fixed automatic macro definitions : don't override already defined macros
- Fixed parsing of singleton extern "C" definitions (without curly braces)
- Fixed issue 86 (http://code.google.com/p/jnaerator/issues/detail?id=86) : generate proper array creation code for empty structs with the JNA runtime.
- Fixed issue 85 (http://code.google.com/p/jnaerator/issues/detail?id=85) : generate proper constant pointer casting code for BridJ : `#define PTR ((void*)-1)` generates `Pointer PTR = Pointer.pointerToAddress(-1);`
- Fixed generation of enums
- Fixed typing of (constant) boolean expressions