From: Steve Baird <ba...@adacore.com>

Do not generate a warning stating that the size of a formal parameter
is 8 bits unless the size of the formal parameter is 8 bits.

gcc/ada/ChangeLog:

        * freeze.adb (Freeze_Profile): Do not emit a warning stating that
        a formal parameter's size is 8 if the parameter's size is not 8.

Tested on x86_64-pc-linux-gnu, committed on master.

---
 gcc/ada/freeze.adb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gcc/ada/freeze.adb b/gcc/ada/freeze.adb
index dbd7cf425a2..afe0fda0671 100644
--- a/gcc/ada/freeze.adb
+++ b/gcc/ada/freeze.adb
@@ -4813,6 +4813,8 @@ package body Freeze is
                  and then Convention (F_Type) = Convention_Ada
                  and then not Has_Warnings_Off (F_Type)
                  and then not Has_Size_Clause (F_Type)
+                 and then Present (Esize (F_Type))
+                 and then Esize (F_Type) = 8
                then
                   Error_Msg_N
                     ("& is an 8-bit Ada Boolean?x?", Formal);
-- 
2.43.0

Reply via email to