From c5ff859dc01958f39ba77de6421d774171e3ea09 Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Tue, 13 Jul 2021 11:23:38 +0200 Subject: [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. --- gcc/ada/freeze.adb | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'gcc') 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 -- cgit v1.1