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

commit r16-1320-gfefac6864133950da1c61ab81c56bc3c68a57fcb
Author: Ronan Desplanques <desplanq...@adacore.com>
Date:   Tue Mar 4 13:16:39 2025 +0100

    ada: Remove redundant error checking
    
    This patch removes a test for a condition that can never be false.
    
    gcc/ada/ChangeLog:
    
            * sem_attr.adb (Analyze_Attribute): Remove test.

Diff:
---
 gcc/ada/sem_attr.adb | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/gcc/ada/sem_attr.adb b/gcc/ada/sem_attr.adb
index bf4d68447c96..d4034d28da60 100644
--- a/gcc/ada/sem_attr.adb
+++ b/gcc/ada/sem_attr.adb
@@ -5693,19 +5693,15 @@ package body Sem_Attr is
       when Attribute_Partition_ID =>
          Check_E0;
 
-         if P_Type /= Any_Type then
-            if not Is_Library_Level_Entity (Entity (P)) then
-               Error_Attr_P
-                 ("prefix of % attribute must be library-level entity");
+         if not Is_Library_Level_Entity (Entity (P)) then
+            Error_Attr_P
+              ("prefix of % attribute must be library-level entity");
 
-            --  The defining entity of prefix should not be declared inside a
-            --  Pure unit. RM E.1(8). Is_Pure was set during declaration.
+         --  The defining entity of prefix should not be declared inside a
+         --  Pure unit. RM E.1(8). Is_Pure was set during declaration.
 
-            elsif Is_Entity_Name (P)
-              and then Is_Pure (Entity (P))
-            then
-               Error_Attr_P ("prefix of% attribute must not be declared pure");
-            end if;
+         elsif Is_Entity_Name (P) and then Is_Pure (Entity (P)) then
+            Error_Attr_P ("prefix of% attribute must not be declared pure");
          end if;
 
          Set_Etype (N, Universal_Integer);

Reply via email to