| -- { dg-do run } | |
| with System; | |
| procedure Protected_Self_Ref1 is | |
| protected type P is | |
| procedure Foo; | |
| end P; | |
| protected body P is | |
| procedure Foo is | |
| Ptr : access P; -- here P denotes the type P | |
| T : Integer; | |
| A : System.Address; | |
| begin | |
| Ptr := P'Access; -- here P denotes the "this" instance of P | |
| T := P'Size; | |
| A := P'Address; | |
| end; | |
| end P; | |
| O : P; | |
| begin | |
| O.Foo; | |
| end Protected_Self_Ref1; |