https://gcc.gnu.org/g:453724978e48cc0fb9854cbb961ba2cd96192ba8

commit r16-1134-g453724978e48cc0fb9854cbb961ba2cd96192ba8
Author: Viljar Indus <in...@adacore.com>
Date:   Tue Jan 14 13:31:04 2025 +0200

    ada: Mark constants inside a declare expression as referenced
    
    Expressions within a declare expression were simply bound to
    locally defined constants. However they were never marked as
    referenced. This would trigger an unreferenced constant warning
    if -gnatwu was used.
    
    gcc/ada/ChangeLog:
    
            * sem_res.adb (Resolve_Declare_Expression): Mark used
            local variables inside a declare expression as referenced.

Diff:
---
 gcc/ada/sem_res.adb | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gcc/ada/sem_res.adb b/gcc/ada/sem_res.adb
index bbf7bb95ed84..865f967a5b93 100644
--- a/gcc/ada/sem_res.adb
+++ b/gcc/ada/sem_res.adb
@@ -7806,6 +7806,7 @@ package body Sem_Res is
          then
             Set_Entity (N, Local);
             Set_Etype (N, Etype (Local));
+            Generate_Reference (Local, N);
          end if;
 
          return OK;

Reply via email to