diff options
Diffstat (limited to 'gcc/testsuite/gnat.dg/protected_self_ref1.adb')
-rw-r--r-- | gcc/testsuite/gnat.dg/protected_self_ref1.adb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/protected_self_ref1.adb b/gcc/testsuite/gnat.dg/protected_self_ref1.adb new file mode 100644 index 000000000..b6c2aef68 --- /dev/null +++ b/gcc/testsuite/gnat.dg/protected_self_ref1.adb @@ -0,0 +1,25 @@ +-- { 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; |