diff --git a/tests/tests-asn1c-compiler/139-component-relation-OK.asn1.-P b/tests/tests-asn1c-compiler/139-component-relation-OK.asn1.-P
index e9af4b3..89468a4 100644
--- a/tests/tests-asn1c-compiler/139-component-relation-OK.asn1.-P
+++ b/tests/tests-asn1c-compiler/139-component-relation-OK.asn1.-P
@@ -24,7 +24,7 @@
 	long	 ident;
 	struct value {
 		value_PR present;
-		union value_u {
+		union Frame__value_u {
 			PrimitiveMessage_t	 PrimitiveMessage;
 			ComplexMessage_t	 ComplexMessage;
 		} choice;
@@ -81,7 +81,7 @@
 }
 
 static asn_type_selector_result_t
-select_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
 	const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1;
 	size_t constraining_column = 0; /* &id */
@@ -188,7 +188,7 @@
 		.tag = -1 /* Ambiguous tag (ANY?) */,
 		.tag_mode = 0,
 		.type = &asn_DEF_value_3,
-		.type_selector = select_value_type,
+		.type_selector = select_Frame_value_type,
 		{ .oer_constraints = 0, .per_constraints = 0, .general_constraints =  memb_value_constraint_1 },
 		0, 0, /* No default value */
 		.name = "value"
diff --git a/tests/tests-asn1c-compiler/140-component-relation-OK.asn1.-P b/tests/tests-asn1c-compiler/140-component-relation-OK.asn1.-P
index e9af4b3..89468a4 100644
--- a/tests/tests-asn1c-compiler/140-component-relation-OK.asn1.-P
+++ b/tests/tests-asn1c-compiler/140-component-relation-OK.asn1.-P
@@ -24,7 +24,7 @@
 	long	 ident;
 	struct value {
 		value_PR present;
-		union value_u {
+		union Frame__value_u {
 			PrimitiveMessage_t	 PrimitiveMessage;
 			ComplexMessage_t	 ComplexMessage;
 		} choice;
@@ -81,7 +81,7 @@
 }
 
 static asn_type_selector_result_t
-select_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
 	const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1;
 	size_t constraining_column = 0; /* &id */
@@ -188,7 +188,7 @@
 		.tag = -1 /* Ambiguous tag (ANY?) */,
 		.tag_mode = 0,
 		.type = &asn_DEF_value_3,
-		.type_selector = select_value_type,
+		.type_selector = select_Frame_value_type,
 		{ .oer_constraints = 0, .per_constraints = 0, .general_constraints =  memb_value_constraint_1 },
 		0, 0, /* No default value */
 		.name = "value"
diff --git a/tests/tests-asn1c-compiler/141-component-relation-OK.asn1.-P b/tests/tests-asn1c-compiler/141-component-relation-OK.asn1.-P
index 80abe31..9befb07 100644
--- a/tests/tests-asn1c-compiler/141-component-relation-OK.asn1.-P
+++ b/tests/tests-asn1c-compiler/141-component-relation-OK.asn1.-P
@@ -24,7 +24,7 @@
 	ConstrainedInteger_t	 ident;
 	struct value {
 		value_PR present;
-		union value_u {
+		union Frame__value_u {
 			PrimitiveMessage_t	 PrimitiveMessage;
 			ComplexMessage_t	 ComplexMessage;
 		} choice;
@@ -87,7 +87,7 @@
 }
 
 static asn_type_selector_result_t
-select_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_Frame_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
 	const asn_ioc_set_t *itable = asn_IOS_FrameTypes_1;
 	size_t constraining_column = 0; /* &id */
@@ -194,7 +194,7 @@
 		.tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
 		.tag_mode = +1,	/* EXPLICIT tag at current level */
 		.type = &asn_DEF_value_3,
-		.type_selector = select_value_type,
+		.type_selector = select_Frame_value_type,
 		{ .oer_constraints = 0, .per_constraints = 0, .general_constraints =  memb_value_constraint_1 },
 		0, 0, /* No default value */
 		.name = "value"
diff --git a/tests/tests-asn1c-compiler/144-ios-parameterization-OK.asn1.-P b/tests/tests-asn1c-compiler/144-ios-parameterization-OK.asn1.-P
index 2f0a421..9020ba7 100644
--- a/tests/tests-asn1c-compiler/144-ios-parameterization-OK.asn1.-P
+++ b/tests/tests-asn1c-compiler/144-ios-parameterization-OK.asn1.-P
@@ -86,7 +86,7 @@
 	long	 id;
 	struct value {
 		value_PR present;
-		union value_u {
+		union SpecializedContent_30P0__value_u {
 			long	 INTEGER;
 			BOOLEAN_t	 BOOLEAN;
 		} choice;
@@ -141,7 +141,7 @@
 }
 
 static asn_type_selector_result_t
-select_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_SpecializedContent_30P0_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
 	const asn_ioc_set_t *itable = asn_IOS_RegionalExtension_1;
 	size_t constraining_column = 0; /* &id */
@@ -248,7 +248,7 @@
 		.tag = -1 /* Ambiguous tag (ANY?) */,
 		.tag_mode = 0,
 		.type = &asn_DEF_value_3,
-		.type_selector = select_value_type,
+		.type_selector = select_SpecializedContent_30P0_value_type,
 		{ .oer_constraints = 0, .per_constraints = 0, .general_constraints =  memb_value_constraint_1 },
 		0, 0, /* No default value */
 		.name = "value"
diff --git a/tests/tests-asn1c-compiler/146-ios-parameterization-per-OK.asn1.-Pgen-PER b/tests/tests-asn1c-compiler/146-ios-parameterization-per-OK.asn1.-Pgen-PER
index e17e676..b232b5b 100644
--- a/tests/tests-asn1c-compiler/146-ios-parameterization-per-OK.asn1.-Pgen-PER
+++ b/tests/tests-asn1c-compiler/146-ios-parameterization-per-OK.asn1.-Pgen-PER
@@ -86,7 +86,7 @@
 	long	 id;
 	struct value {
 		value_PR present;
-		union value_u {
+		union SpecializedContent_30P0__value_u {
 			long	 INTEGER;
 			BOOLEAN_t	 BOOLEAN;
 		} choice;
@@ -141,7 +141,7 @@
 }
 
 static asn_type_selector_result_t
-select_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
+select_SpecializedContent_30P0_value_type(const asn_TYPE_descriptor_t *parent_type, const void *parent_sptr) {
 	asn_type_selector_result_t result = {0, 0};
 	const asn_ioc_set_t *itable = asn_IOS_RegionalExtension_1;
 	size_t constraining_column = 0; /* &id */
@@ -264,7 +264,7 @@
 		.tag = -1 /* Ambiguous tag (ANY?) */,
 		.tag_mode = 0,
 		.type = &asn_DEF_value_3,
-		.type_selector = select_value_type,
+		.type_selector = select_SpecializedContent_30P0_value_type,
 		{ .oer_constraints = 0, .per_constraints = &asn_PER_memb_value_constr_3, .general_constraints =  memb_value_constraint_1 },
 		0, 0, /* No default value */
 		.name = "value"
