https://gcc.gnu.org/g:eeb25a33f5b47d932b14e365b033c3122d80c7c4

commit r16-1800-geeb25a33f5b47d932b14e365b033c3122d80c7c4
Author: Eric Botcazou <ebotca...@adacore.com>
Date:   Tue Apr 22 13:51:14 2025 +0200

    ada: Fix fallout of latest change to aggregate expansion
    
    It exposed a small loophole in the Backend_Processing_Possible predicate.
    
    gcc/ada/ChangeLog:
    
            * exp_aggr.adb (Backend_Processing_Possible.Component_Check): Return
            False for delayed conditional expressions.

Diff:
---
 gcc/ada/exp_aggr.adb | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gcc/ada/exp_aggr.adb b/gcc/ada/exp_aggr.adb
index 48478f350bb9..a25d28d2edd4 100644
--- a/gcc/ada/exp_aggr.adb
+++ b/gcc/ada/exp_aggr.adb
@@ -865,7 +865,9 @@ package body Exp_Aggr is
 
             --  Checks 8: (no delayed components)
 
-            if Is_Delayed_Aggregate (Expr) then
+            if Is_Delayed_Aggregate (Expr)
+              or else Is_Delayed_Conditional_Expression (Expr)
+            then
                return False;
             end if;

Reply via email to