https://gcc.gnu.org/g:7158a64fe920fc5ed14b79459486a58e9718326d

commit r15-1150-g7158a64fe920fc5ed14b79459486a58e9718326d
Author: Justin Squirek <squi...@adacore.com>
Date:   Thu Apr 11 20:51:05 2024 +0000

    ada: Unreferenced warning on abstract subprogram
    
    This patch modifies the unreferenced entity warning in the compiler to avoid
    noisily warning about unreferenced abstract subprogram.
    
    gcc/ada/
    
            * sem_warn.adb (Warn_On_Unreferenced_Entity): Add a condition to
            ignore warnings on unreferenced abstract subprogram.

Diff:
---
 gcc/ada/sem_warn.adb | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/gcc/ada/sem_warn.adb b/gcc/ada/sem_warn.adb
index 2de3f8668b0..91a57d521d1 100644
--- a/gcc/ada/sem_warn.adb
+++ b/gcc/ada/sem_warn.adb
@@ -4452,12 +4452,16 @@ package body Sem_Warn is
                  ("?u?literal & is not referenced!", E);
 
             when E_Function =>
-               Error_Msg_N -- CODEFIX
-                 ("?u?function & is not referenced!", E);
+               if not Is_Abstract_Subprogram (E) then
+                  Error_Msg_N -- CODEFIX
+                    ("?u?function & is not referenced!", E);
+               end if;
 
             when E_Procedure =>
-               Error_Msg_N -- CODEFIX
-                 ("?u?procedure & is not referenced!", E);
+               if not Is_Abstract_Subprogram (E) then
+                  Error_Msg_N -- CODEFIX
+                    ("?u?procedure & is not referenced!", E);
+               end if;
 
             when E_Package =>
                Error_Msg_N -- CODEFIX

Reply via email to