diff --git a/ada/ast.py b/ada/ast.py index f9d24a9c2..1eb7f8827 100644 --- a/ada/ast.py +++ b/ada/ast.py @@ -7826,6 +7826,7 @@ def is_limited_type(): lambda td=TypeDecl: td.type_def.is_limited_type, lambda sb=SubtypeDecl: sb.get_type.is_limited_type, lambda it=IncompleteTypeDecl: it.full_view.is_limited_type, + lambda cw=ClasswideTypeDecl: cw.type_decl.is_limited_type, lambda _=ProtectedTypeDecl: True, lambda _=TaskTypeDecl: True, lambda _: False diff --git a/testsuite/tests/properties/is_limited_type/test.adb b/testsuite/tests/properties/is_limited_type/test.adb index f74ec140f..76d575b18 100644 --- a/testsuite/tests/properties/is_limited_type/test.adb +++ b/testsuite/tests/properties/is_limited_type/test.adb @@ -47,6 +47,9 @@ procedure Test is type Non_Limited_From_Limited_Interface is new Limited_Interface with null record; --% node.p_is_limited_type + + subtype Classwide_Type is Limited_Tagged_Rec'Class; + --% node.p_is_limited_type begin null; end Test; diff --git a/testsuite/tests/properties/is_limited_type/test.out b/testsuite/tests/properties/is_limited_type/test.out index 8228a9223..ee0d184eb 100644 --- a/testsuite/tests/properties/is_limited_type/test.out +++ b/testsuite/tests/properties/is_limited_type/test.out @@ -75,3 +75,9 @@ Working on node +==================================================================== + +Eval 'node.p_is_limited_type' +Result: True