diff --git a/gcc/ada/doc/gnat_rm/implementation_defined_pragmas.rst b/gcc/ada/doc/gnat_rm/implementation_defined_pragmas.rst --- a/gcc/ada/doc/gnat_rm/implementation_defined_pragmas.rst +++ b/gcc/ada/doc/gnat_rm/implementation_defined_pragmas.rst @@ -7313,7 +7313,7 @@ For the variable case, warnings are never given for unreferenced variables whose name contains one of the substrings ``DISCARD, DUMMY, IGNORE, JUNK, UNUSED`` in any casing. Such names are typically to be used in cases where such warnings are expected. -Thus it is never necessary to use ``pragma Unmodified`` for such +Thus it is never necessary to use ``pragma Unused`` for such variables, though it is harmless to do so. Pragma Validity_Checks diff --git a/gcc/ada/gnat_rm.texi b/gcc/ada/gnat_rm.texi --- a/gcc/ada/gnat_rm.texi +++ b/gcc/ada/gnat_rm.texi @@ -21,7 +21,7 @@ @copying @quotation -GNAT Reference Manual , Jan 03, 2022 +GNAT Reference Manual , Apr 22, 2022 AdaCore @@ -8837,7 +8837,7 @@ For the variable case, warnings are never given for unreferenced variables whose name contains one of the substrings @code{DISCARD, DUMMY, IGNORE, JUNK, UNUSED} in any casing. Such names are typically to be used in cases where such warnings are expected. -Thus it is never necessary to use @code{pragma Unmodified} for such +Thus it is never necessary to use @code{pragma Unused} for such variables, though it is harmless to do so. @node Pragma Validity_Checks,Pragma Volatile,Pragma Unused,Implementation Defined Pragmas diff --git a/gcc/ada/lib-xref.adb b/gcc/ada/lib-xref.adb --- a/gcc/ada/lib-xref.adb +++ b/gcc/ada/lib-xref.adb @@ -936,10 +936,10 @@ package body Lib.Xref is if Chars (BE) = Chars (E) then if Has_Pragma_Unused (E) then Error_Msg_NE -- CODEFIX - ("??pragma Unused given for&!", N, BE); + ("??aspect Unused specified for&!", N, BE); else Error_Msg_NE -- CODEFIX - ("??pragma Unreferenced given for&!", N, BE); + ("??aspect Unreferenced specified for&!", N, BE); end if; exit; end if; @@ -952,10 +952,10 @@ package body Lib.Xref is elsif Has_Pragma_Unused (E) then Error_Msg_NE -- CODEFIX - ("??pragma Unused given for&!", N, E); + ("??aspect Unused specified for&!", N, E); else Error_Msg_NE -- CODEFIX - ("??pragma Unreferenced given for&!", N, E); + ("??aspect Unreferenced specified for&!", N, E); end if; end if; diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -5168,12 +5168,12 @@ package body Sem_Prag is elsif Has_Pragma_Unmodified (Arg_Id) then if Has_Pragma_Unused (Arg_Id) then Error_Msg_NE - ("??pragma Unused already given for &!", Arg_Expr, - Arg_Id); + (Fix_Error ("??pragma Unused already given for &!"), + Arg_Expr, Arg_Id); else Error_Msg_NE - ("??pragma Unmodified already given for &!", Arg_Expr, - Arg_Id); + (Fix_Error ("??pragma Unmodified already given for &!"), + Arg_Expr, Arg_Id); end if; -- Otherwise the pragma referenced an illegal entity @@ -5276,12 +5276,13 @@ package body Sem_Prag is if Has_Pragma_Unreferenced (Arg_Id) then if Has_Pragma_Unused (Arg_Id) then Error_Msg_NE - ("??pragma Unused already given for &!", Arg_Expr, - Arg_Id); + (Fix_Error ("??pragma Unused already given for &!"), + Arg_Expr, Arg_Id); else Error_Msg_NE - ("??pragma Unreferenced already given for &!", - Arg_Expr, Arg_Id); + (Fix_Error + ("??pragma Unreferenced already given for &!"), + Arg_Expr, Arg_Id); end if; -- Apply Unreferenced to the entity diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -25698,10 +25698,11 @@ package body Sem_Util is -- of pragma Unused. if Has_Pragma_Unused (Ent) then - Error_Msg_NE ("??pragma Unused given for &!", N, Ent); + Error_Msg_NE + ("??aspect Unused specified for &!", N, Ent); else Error_Msg_NE - ("??pragma Unmodified given for &!", N, Ent); + ("??aspect Unmodified specified for &!", N, Ent); end if; end if;