| package Tagged5 is | |
| type T is limited interface; | |
| not overriding function Element | |
| (Self : T; | |
| Index : Positive) | |
| return Integer is abstract | |
| with Pre'Class => Index + Index ** 2 in 1 .. 10; | |
| function First | |
| (Self : T'Class) | |
| return Integer | |
| is (Self.Element (1)); | |
| procedure Dummy; | |
| end Tagged5; |