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

commit r16-4984-ga740ac2bf812a0a08410e549ffbeeb032bf31478
Author: Viljar Indus <[email protected]>
Date:   Tue Oct 7 12:59:28 2025 +0300

    ada: Avoid triggering ghost context errors on prefixed names
    
    Errors for ghost incompatibilities of qualified names should not
    be applied to prefixes but rather only the final selector.
    
    gcc/ada/ChangeLog:
    
            * ghost.adb (Is_Ok_Context): consider ghost prefix to always
            be a valid ghost context.

Diff:
---
 gcc/ada/ghost.adb | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/gcc/ada/ghost.adb b/gcc/ada/ghost.adb
index e7a55efb4beb..d49d94df246a 100644
--- a/gcc/ada/ghost.adb
+++ b/gcc/ada/ghost.adb
@@ -740,6 +740,14 @@ package body Ghost is
                then
                   return True;
 
+               --  It is always legal to use a ghost prefix. More complex
+               --  scenarios are analyzed for the selector.
+
+               elsif Nkind (Par) = N_Selected_Component
+                 and then Prefix (Par) = Prev
+               then
+                  return True;
+
                elsif Is_OK_Declaration (Par) then
                   return True;

Reply via email to