diff --git a/mono/metadata/sre.c b/mono/metadata/sre.c index afab61aa473e..6881617fedc5 100644 --- a/mono/metadata/sre.c +++ b/mono/metadata/sre.c @@ -3665,6 +3665,8 @@ typebuilder_setup_one_field (MonoDynamicImage *dynamic_image, MonoClass *klass, field->type = mono_reflection_type_get_handle ((MonoReflectionType*)fb->type, error); goto_if_nok (error, leave); } + if (klass->enumtype && strcmp (field->name, "value__") == 0) // used by enum classes to store the instance value + field->type->attrs |= FIELD_ATTRIBUTE_RT_SPECIAL_NAME; if (!klass->enumtype && !mono_type_get_underlying_type (field->type)) { mono_class_set_type_load_failure (klass, "Field '%s' is an enum type with a bad underlying type", field->name);