From: Ghjuvan Lacambre Date: Fri, 2 Jul 2021 14:09:27 +0000 (+0200) Subject: [Ada] Fix ignored dynamic predicates specified through "predicate" aspect X-Git-Tag: basepoints/gcc-13~4575 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=69a0ff3416a5bbd8abcdd3fb85a387b2eccc88dc;p=thirdparty%2Fgcc.git [Ada] Fix ignored dynamic predicates specified through "predicate" aspect gcc/ada/ * sem_eval.adb (Is_Static_Subtype): Take predicates created through "predicate" pragma into account. --- diff --git a/gcc/ada/sem_eval.adb b/gcc/ada/sem_eval.adb index 8817cea3d923..da51caa30a12 100644 --- a/gcc/ada/sem_eval.adb +++ b/gcc/ada/sem_eval.adb @@ -5741,6 +5741,8 @@ package body Sem_Eval is elsif Has_Dynamic_Predicate_Aspect (Typ) or else (Is_Derived_Type (Typ) and then Has_Aspect (Typ, Aspect_Dynamic_Predicate)) + or else (Has_Aspect (Typ, Aspect_Predicate) + and then not Has_Static_Predicate (Typ)) then return False;