aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2021-07-13 11:23:38 +0200
committerPierre-Marie de Rodat <derodat@adacore.com>2021-09-22 15:01:41 +0000
commitc5ff859dc01958f39ba77de6421d774171e3ea09 (patch)
tree83484de336555f31d2bc75ede92a212297e7b9fd /gcc
parentd232417a8832c480abeb1c28abd66978b85e5081 (diff)
downloadgcc-c5ff859dc01958f39ba77de6421d774171e3ea09.zip
gcc-c5ff859dc01958f39ba77de6421d774171e3ea09.tar.gz
gcc-c5ff859dc01958f39ba77de6421d774171e3ea09.tar.bz2
[Ada] Fix imprecise wording for error on scalar storage order
gcc/ada/ * freeze.adb (Check_Component_Storage_Order): Give a specific error message for non-byte-aligned component in the packed case. Replace "composite" with "record" in both cases.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/freeze.adb12
1 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ada/freeze.adb b/gcc/ada/freeze.adb
index 15ce832..3f57bc5 100644
--- a/gcc/ada/freeze.adb
+++ b/gcc/ada/freeze.adb
@@ -1352,9 +1352,15 @@ package body Freeze is
elsif Is_Record_Type (Encl_Base)
and then not Comp_Byte_Aligned
then
- Error_Msg_N
- ("type of non-byte-aligned component must have same scalar "
- & "storage order as enclosing composite", Err_Node);
+ if Present (Component_Clause (Comp)) then
+ Error_Msg_N
+ ("type of non-byte-aligned component must have same scalar"
+ & " storage order as enclosing record", Err_Node);
+ else
+ Error_Msg_N
+ ("type of packed component must have same scalar"
+ & " storage order as enclosing record", Err_Node);
+ end if;
-- Warn if specified only for the outer composite