aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPiotr Trojanek <trojanek@adacore.com>2022-01-18 21:18:42 +0100
committerPierre-Marie de Rodat <derodat@adacore.com>2022-05-09 09:27:38 +0000
commit5c8053df7b7cbb9709aec0f295c4d0b8c7251f7f (patch)
tree1663f2f755cb87dc611f5da450eb712f1293a026
parenta252a471df552cf2c0a688a3472094fe234b7ab6 (diff)
downloadgcc-5c8053df7b7cbb9709aec0f295c4d0b8c7251f7f.zip
gcc-5c8053df7b7cbb9709aec0f295c4d0b8c7251f7f.tar.gz
gcc-5c8053df7b7cbb9709aec0f295c4d0b8c7251f7f.tar.bz2
[Ada] Simplify conversions from Uint to Char_Code
Replace "Char_Code (UI_To_Int (...))" with "UI_To_CC (...). Cleanup related to handling characters in GNATprove counterexamples; semantics is unaffected. gcc/ada/ * par-prag.adb (Prag): Simplify conversion of character codes. * sem_case.adb (Choice_Image): Likewise. (Lit_Of): Likewise.
-rw-r--r--gcc/ada/par-prag.adb3
-rw-r--r--gcc/ada/sem_case.adb4
2 files changed, 3 insertions, 4 deletions
diff --git a/gcc/ada/par-prag.adb b/gcc/ada/par-prag.adb
index 6f1f50f..88f27f0 100644
--- a/gcc/ada/par-prag.adb
+++ b/gcc/ada/par-prag.adb
@@ -1266,8 +1266,7 @@ begin
elsif Nkind (A) = N_Character_Literal then
declare
- R : constant Char_Code :=
- Char_Code (UI_To_Int (Char_Literal_Value (A)));
+ R : constant Char_Code := UI_To_CC (Char_Literal_Value (A));
begin
if In_Character_Range (R) then
Wide_Character_Encoding_Method :=
diff --git a/gcc/ada/sem_case.adb b/gcc/ada/sem_case.adb
index fed9f4d..ccd4b18 100644
--- a/gcc/ada/sem_case.adb
+++ b/gcc/ada/sem_case.adb
@@ -1104,7 +1104,7 @@ package body Sem_Case is
C := UI_To_Int (Value);
if C in 16#20# .. 16#7E# then
- Set_Character_Literal_Name (Char_Code (UI_To_Int (Value)));
+ Set_Character_Literal_Name (UI_To_CC (Value));
return Name_Find;
end if;
@@ -2925,7 +2925,7 @@ package body Sem_Case is
-- is created with the appropriate Char_Code and Chars fields.
if Is_Standard_Character_Type (Choice_Type) then
- Set_Character_Literal_Name (Char_Code (UI_To_Int (Value)));
+ Set_Character_Literal_Name (UI_To_CC (Value));
Lit :=
Make_Character_Literal (Loc,
Chars => Name_Find,