diff --git a/tests/tests-asn1c-compiler/90-cond-int-type-OK.asn1.-Pfwide-types b/tests/tests-asn1c-compiler/90-cond-int-type-OK.asn1.-Pfwide-types
index a5d364d..f3facef 100644
--- a/tests/tests-asn1c-compiler/90-cond-int-type-OK.asn1.-Pfwide-types
+++ b/tests/tests-asn1c-compiler/90-cond-int-type-OK.asn1.-Pfwide-types
@@ -68,7 +68,7 @@
 /*** <<< CODE [CN-IntegerMinMax] >>> ***/
 
 int
-CN_IntegerMinMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+CN_IntegerMinMax_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	const INTEGER_t *st = (const INTEGER_t *)sptr;
 	
@@ -136,7 +136,7 @@
 /*** <<< CODE [CN-IntegerMinLow] >>> ***/
 
 int
-CN_IntegerMinLow_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+CN_IntegerMinLow_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	const INTEGER_t *st = (const INTEGER_t *)sptr;
 	long value;
@@ -214,7 +214,7 @@
 /*** <<< CODE [NO-IntegerMinHigh] >>> ***/
 
 int
-NO_IntegerMinHigh_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+NO_IntegerMinHigh_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	const INTEGER_t *st = (const INTEGER_t *)sptr;
 	long value;
@@ -292,7 +292,7 @@
 /*** <<< CODE [NO-IntegerLowHigh] >>> ***/
 
 int
-NO_IntegerLowHigh_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+NO_IntegerLowHigh_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	unsigned long value;
 	
@@ -369,7 +369,7 @@
 /*** <<< CODE [CN-IntegerLowMax] >>> ***/
 
 int
-CN_IntegerLowMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+CN_IntegerLowMax_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	const INTEGER_t *st = (const INTEGER_t *)sptr;
 	long value;
@@ -447,7 +447,7 @@
 /*** <<< CODE [NO-IntegerHighMax] >>> ***/
 
 int
-NO_IntegerHighMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+NO_IntegerHighMax_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	const INTEGER_t *st = (const INTEGER_t *)sptr;
 	long value;
@@ -525,7 +525,7 @@
 /*** <<< CODE [NO-IntegerLowestMax] >>> ***/
 
 int
-NO_IntegerLowestMax_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+NO_IntegerLowestMax_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	const INTEGER_t *st = (const INTEGER_t *)sptr;
 	long value;
@@ -603,7 +603,7 @@
 /*** <<< CODE [NO-IntegerOutRange] >>> ***/
 
 int
-NO_IntegerOutRange_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+NO_IntegerOutRange_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	unsigned long value;
 	
@@ -680,7 +680,7 @@
 /*** <<< CODE [NO-IntegerOutValue] >>> ***/
 
 int
-NO_IntegerOutValue_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+NO_IntegerOutValue_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	unsigned long value;
 	
@@ -757,7 +757,7 @@
 /*** <<< CODE [OK-IntegerInRange1] >>> ***/
 
 int
-OK_IntegerInRange1_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+OK_IntegerInRange1_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -829,7 +829,7 @@
 /*** <<< CODE [OK-IntegerInRange2] >>> ***/
 
 int
-OK_IntegerInRange2_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+OK_IntegerInRange2_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -901,7 +901,7 @@
 /*** <<< CODE [OK-IntegerInRange3] >>> ***/
 
 int
-OK_IntegerInRange3_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+OK_IntegerInRange3_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -973,7 +973,7 @@
 /*** <<< CODE [OK-IntegerInRange4] >>> ***/
 
 int
-OK_IntegerInRange4_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+OK_IntegerInRange4_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	long value;
 	
@@ -1045,7 +1045,7 @@
 /*** <<< CODE [OK-IntegerInRange5] >>> ***/
 
 int
-OK_IntegerInRange5_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+OK_IntegerInRange5_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	const INTEGER_t *st = (const INTEGER_t *)sptr;
 	long value;
@@ -1123,7 +1123,7 @@
 /*** <<< CODE [NO-IntegerInRange6] >>> ***/
 
 int
-NO_IntegerInRange6_constraint(asn_TYPE_descriptor_t *td, const void *sptr,
+NO_IntegerInRange6_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
 			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
 	
 	if(!sptr) {
