From: Justin Squirek <squi...@adacore.com> 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. Tested on x86_64-pc-linux-gnu, committed on master. --- 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 -- 2.45.1