The difference you see is in the way error messages are handled by the space-optimized encoder/decoder (SOED) vs. the time-optimized encoder/decoder (TOED). The purpose of the TOED is to work quickly in production environments, and since in such an environment it is unlikely to be of much help to know where the error is, the default is to not produce a comprehensive error message. The purpose of the SOED, on the other hand, is to provide comprehensive tracing and debugging information, so the default for the SOED is to provide a full error message upon encountering an error.
You may change the behavior of the TOED so it prints errors by:
If you are still in the development stage, where tracing and debugging are important, you would be better off using the SOED. When you believe that your application is ready to go, only then switch to the TOED and submit it to your test procedures. Remember that there is no need for changes to your application code when you switch from the SOED to the TOED; just recompile the ASN.1, recompile the application, and link with the TOED libraries.
The samples included with some of the Knowledge Center answers are meant for your general understanding of the OSS products. Different versions of the products might produce slightly different outputs. Consult the products documentation and samples for the most up-to-date products information and code examples.
Test drive the OSS Nokalva ASN.1, LTE, and XML Tools now! Your trial includes complete software, documentation, sample programs, free 24x7 technical support and more.
Our expert personnel can help you learn ASN.1!
We offer 4-day ASN.1 courses at our headquarters or your premises.