diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/sem_prag.adb | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index 689c728..e9cfb13 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -8323,11 +8323,21 @@ package body Sem_Prag is Next_Formal (Formal); end loop; + -- Error out if the number of parameters is lower than n + if Count < Minimum then Error_Msg_Uint_1 := UI_From_Int (Minimum); Error_Pragma_Arg ("argument of pragma% must have at least" & "^ parameters", Arg2); + + -- But warn if it is exactly n because this is useless + + elsif Count = Minimum then + Error_Msg_Uint_1 := UI_From_Int (Minimum + 1); + Error_Msg_N + ("??subprogram should have at least ^ parameters", + Get_Pragma_Arg (Arg2)); end if; end; end if; |