aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGhjuvan Lacambre <lacambre@adacore.com>2021-04-28 11:03:03 +0200
committerPierre-Marie de Rodat <derodat@adacore.com>2021-07-05 13:09:13 +0000
commit2644eaa0b91e25d01b5c847131bf7caafc7c4588 (patch)
tree64f3855ce2d37d27ac177fefa7c7988b54fc6cc4
parent74895b63549a064f2de8de8bd66e7c0bdbff7076 (diff)
downloadgcc-2644eaa0b91e25d01b5c847131bf7caafc7c4588.zip
gcc-2644eaa0b91e25d01b5c847131bf7caafc7c4588.tar.gz
gcc-2644eaa0b91e25d01b5c847131bf7caafc7c4588.tar.bz2
[Ada] Fix missing minus sign in literal translation
gcc/ada/ * sem_res.adb (Resolve): Insert minus sign if needed.
-rw-r--r--gcc/ada/sem_res.adb5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/ada/sem_res.adb b/gcc/ada/sem_res.adb
index fb40484..494904f 100644
--- a/gcc/ada/sem_res.adb
+++ b/gcc/ada/sem_res.adb
@@ -2934,6 +2934,11 @@ package body Sem_Res is
else
UI_Image (Norm_Num (Expr_Value_R (Expr)), Decimal);
Start_String;
+
+ if UR_Is_Negative (Expr_Value_R (Expr)) then
+ Store_String_Chars ("-");
+ end if;
+
Store_String_Chars
(UI_Image_Buffer (1 .. UI_Image_Length));
Param1 := Make_String_Literal (Loc, End_String);