constness fixes, round-trip and fuzz-testing for CHOICE
diff --git a/tests/tests-asn1c-compiler/138-oer-constraints-OK.asn1.-Pgen-OER b/tests/tests-asn1c-compiler/138-oer-constraints-OK.asn1.-Pgen-OER
index e973c95..5379108 100644
--- a/tests/tests-asn1c-compiler/138-oer-constraints-OK.asn1.-Pgen-OER
+++ b/tests/tests-asn1c-compiler/138-oer-constraints-OK.asn1.-Pgen-OER
@@ -72,7 +72,7 @@
 /*** <<< CODE [B-0-0] >>> ***/
 
 int
-B_0_0_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+B_0_0_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -152,7 +152,7 @@
 /*** <<< CODE [C-1-2] >>> ***/
 
 int
-C_1_2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+C_1_2_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -232,7 +232,7 @@
 /*** <<< CODE [D-inv] >>> ***/
 
 int
-D_inv_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+D_inv_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -312,7 +312,7 @@
 /*** <<< CODE [E-2-5] >>> ***/
 
 int
-E_2_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+E_2_5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -392,7 +392,7 @@
 /*** <<< CODE [F-inv] >>> ***/
 
 int
-F_inv_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+F_inv_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -472,7 +472,7 @@
 /*** <<< CODE [G-3-3] >>> ***/
 
 int
-G_3_3_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+G_3_3_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -552,7 +552,7 @@
 /*** <<< CODE [H-4-5] >>> ***/
 
 int
-H_4_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+H_4_5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -632,7 +632,7 @@
 /*** <<< CODE [I-1-5] >>> ***/
 
 int
-I_1_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+I_1_5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -712,7 +712,7 @@
 /*** <<< CODE [J-4-5] >>> ***/
 
 int
-J_4_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+J_4_5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -792,7 +792,7 @@
 /*** <<< CODE [K-1-4] >>> ***/
 
 int
-K_1_4_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+K_1_4_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -872,7 +872,7 @@
 /*** <<< CODE [L-0-5] >>> ***/
 
 int
-L_0_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+L_0_5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -952,7 +952,7 @@
 /*** <<< CODE [M-inv] >>> ***/
 
 int
-M_inv_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+M_inv_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -1032,7 +1032,7 @@
 /*** <<< CODE [N-0-5] >>> ***/
 
 int
-N_0_5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+N_0_5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -1112,7 +1112,7 @@
 /*** <<< CODE [O-inv] >>> ***/
 
 int
-O_inv_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+O_inv_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -1192,7 +1192,7 @@
 /*** <<< CODE [EConstr] >>> ***/
 
 int
-EConstr_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+EConstr_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -1272,7 +1272,7 @@
 /*** <<< CODE [FConstr] >>> ***/
 
 int
-FConstr_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+FConstr_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;