From 82cf82c4610dbf2a1021841fea3700a477246b79 Mon Sep 17 00:00:00 2001 From: Steve Baird Date: Tue, 29 Nov 2022 14:32:07 -0800 Subject: [PATCH] ada: Enforce Aggregate aspect legality rule Ada 2022 requires that an Aggregate aspect specification shall specify a a name for at least one of Add_Named, Add_Unnamed, or Assign_Indexed. Enforce this rule. gcc/ada/ * sem_ch13.adb (Validate_Aspect_Aggregate): Reject illegal case where none of Add_Named, Add_Unnamed, and Assign_Indexed are specified. --- gcc/ada/sem_ch13.adb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gcc/ada/sem_ch13.adb b/gcc/ada/sem_ch13.adb index a4782747aff4..71eabb4f627d 100644 --- a/gcc/ada/sem_ch13.adb +++ b/gcc/ada/sem_ch13.adb @@ -15729,6 +15729,12 @@ package body Sem_Ch13 is return; end if; + elsif No (Add_Named_Subp) + and then No (Add_Unnamed_Subp) + and then No (Assign_Indexed_Subp) + then + Error_Msg_N ("incomplete specification for aggregate", N); + elsif Present (New_Indexed_Subp) /= Present (Assign_Indexed_Subp) then Error_Msg_N ("incomplete specification for indexed aggregate", N); end if; -- 2.47.3