mirror of https://gerrit.osmocom.org/asn1c
33 lines
1.5 KiB
Plaintext
33 lines
1.5 KiB
Plaintext
|
|
0. ASN.1 grammar parser is written mostly with respect to constructing a tree,
|
|
so a tree destruction is not fully supported and certain memory leaks are
|
|
known. Not a huge problem for run-once programs like a compiler.
|
|
NOTE: This statement does not apply to the target code _produced_
|
|
by the compiler.
|
|
|
|
1. For purposes of compilation, INTEGER type is modelled using a large
|
|
static type (asn_integer_t), but defined as any positive or negative value
|
|
by ASN.1. Not a problem as most specifications use very small values anyway.
|
|
NOTE: This statement does not apply to the target code _produced_
|
|
by the compiler.
|
|
|
|
2. A MACRO facility is part of obsolete ASN.1 standard, and is not supported.
|
|
|
|
3. Multiple tags applied at the same level are not supported:
|
|
BadTags ::= [0] EXPLICIT [2] IMPLICIT OtherType
|
|
The same thing could be achieved by using the indirection:
|
|
GoodTags ::= [0] EXPLICIT OtherTypePtr
|
|
OtherTypePtr ::= [2] IMPLICIT OtherType
|
|
|
|
4. Mixed definite/indefinite length in a _single_ BER tags sequence is not
|
|
supported. Should not be a problem in the real world. Please note that it
|
|
is still possible, for example, to encode a wrapper structure using definite
|
|
length, and encode its substructure member using indefinite length. The BER
|
|
decoder is perfectly capable of decoding such sequences.
|
|
|
|
5. Encoding or decoding of structures with combined length greater than 16MB
|
|
is not tested.
|
|
|
|
6. XER codec does not support integer (INTEGER, ENUMERATED) values
|
|
outside the signed long range.
|