From: Jose Ruiz <r...@adacore.com> Use of duplicated representation aspect is detected elsewhere so we do not try to detect them here to avoid repetition of messages.
gcc/ada/ * sem_prag.adb (Analyze_Pragma): Exclude detection of duplicates because they are detected elsewhere. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/sem_prag.adb | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index 0e2ce9de4b5..a895fd2053a 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -20388,15 +20388,23 @@ package body Sem_Prag is ("pragma % must apply to a protected entry declaration"); end if; - -- Check for duplicates + -- Check for conflicting use of synonyms. Note that we exclude + -- the detection of duplicates here because they are detected + -- elsewhere. - if Has_Rep_Pragma (Entry_Id, Name_Max_Entry_Queue_Length) + if (Has_Rep_Pragma (Entry_Id, Name_Max_Entry_Queue_Length) + and then + Prag_Id /= Pragma_Max_Entry_Queue_Length) or else - Has_Rep_Pragma (Entry_Id, Name_Max_Entry_Queue_Depth) + (Has_Rep_Pragma (Entry_Id, Name_Max_Entry_Queue_Depth) + and then + Prag_Id /= Pragma_Max_Entry_Queue_Depth) or else - Has_Rep_Pragma (Entry_Id, Name_Max_Queue_Length) + (Has_Rep_Pragma (Entry_Id, Name_Max_Queue_Length) + and then + Prag_Id /= Pragma_Max_Queue_Length) then - Error_Msg_N ("??duplicate Max_Entry_Queue_Length pragma", N); + Error_Msg_N ("??maximum entry queue length already set", N); end if; -- Mark the pragma as Ghost if the related subprogram is also -- 2.43.2