https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115507
--- Comment #4 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Marc Poulhi?s <d...@gcc.gnu.org>: https://gcc.gnu.org/g:18232cbcfd2c4f95bf51b4fa9fb65f545c2a0569 commit r15-4630-g18232cbcfd2c4f95bf51b4fa9fb65f545c2a0569 Author: Eric Botcazou <ebotca...@adacore.com> Date: Fri Sep 13 21:09:31 2024 +0200 ada: Fix fallout of change to 'Wide_Wide_Value for enumeration types The literals of enumeration types are always normalized, even though they contain wide characters (but the normalization leaves these unchanged), so a normalization routine that is aware of wide characters must be run on the input string for 'Wide_Wide_Value. gcc/ada/ChangeLog: PR ada/115507 * rtsfind.ads (RE_Id): Add RE_Enum_[Wide_]Wide_String_To_String. (RE_Unit_Table): Add entries for the new values. * exp_attr.adb (Is_User_Defined_Enumeration_Type): New predicate. (Expand_N_Attribute_Reference) <Attribute_Wide_Value>: Build a call to RE_Enum_Wide_String_To_String for user-defined enumeration types. <Attribute_Wide_Wide_Value>: Likewise with RE_Enum_Wide_Wide_String_To_String. * exp_imgv.adb (Expand_Value_Attribute): Adjust to above. * libgnat/s-wchwts.ads (Enum_Wide_String_To_String): New function. (Enum_Wide_Wide_String_To_String): Likewise. * libgnat/s-wchwts.adb: Add clauses for System.Case_Util. (Normalize_String): New local procedure. (Enum_Wide_String_To_String): New function body. (Enum_Wide_Wide_String_To_String): Likewise.