Releases: esa/asn1scc
Maintenance release
Minor bugfix in Ada backend
Bugfix / XER backend
Bugfix
ICD Generation improvement
Implements feature described in #343
Addition of a filter in a panel to simplify the navigation in the generated ICD documents
Bugfixes
Maintenance release - bugfix
Fix issue #332 - generation of duplicate macro definitions in C, causing compiler warnings
Code optimization and decoding bufix
-
Major bugfix (issue #330) Possible invalid memory access in BitStream_ReadByte (could point to an invalid memory address if buffer was larger than value set in the byte counter)
-
This version introduces a functionality to automatically detect and exclude unused generated functions, resulting in significantly smaller output code for both C and Ada backends.
Key Features
-
Unused Function Elimination via
-icdPdus
When using the-icdPdusargument, ASN1SCC now performs a dependency analysis starting from the specified PDUs and their associated functions (isEqual(),isValid(),init(),encode(), anddecode()).- Only the functions directly or indirectly required by these PDUs are generated.
- All unused functions are excluded from the output, reducing code size and improving maintainability.
-
New
-dpdusArgument
A new command-line option,-dpdus, was added to help identify Protocol Data Units (PDUs) in the input ASN.1 grammar.- PDUs are defined as top-level types that are not referenced by any other type.
- Detected PDUs are printed to the console to help users configure
-icdPdusmore easily.
Impact
- Reduces the size of generated code by omitting unused functions.
- Especially beneficial for resource-constrained systems or projects aiming to minimize binary size.
Bugfixes
- Fix missing Xer_EncodeNull and Xer_DecodeNull functions (#326)
- Fix erroneous variable name in XER encoders (#325)
- Removed warnings from latest GCC in compilation of autogenerated test cases (#323)
- Fix corner case with hyphens generated in place of underscores (#322)
- Detect and report REAL numbers that can't be represented in memory when used in bounds (#321)
v4.5.2.4 - Performance boost
This release is a maintenance release (no new features) addressing parsing performance (10x boost).
