diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index f819f289f28..5cc546704e8 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,7 @@ 2008-07-31 Arnaud Charlet + * gnat.dg/sync_iface_test.ad[s,b]: New test. + * gnat.dg/specs/sync_iface_test.ads: New test. 2008-07-31 H.J. Lu diff --git a/gcc/testsuite/gnat.dg/sync_iface_test.adb b/gcc/testsuite/gnat.dg/sync_iface_test.adb new file mode 100644 index 00000000000..f431adfe243 --- /dev/null +++ b/gcc/testsuite/gnat.dg/sync_iface_test.adb @@ -0,0 +1,19 @@ +-- { dg-do compile } +package body Sync_Iface_Test is + protected body Buffer is + procedure Dummy is begin null; end; + end; + + function First (Obj : Buffer) return Natural is + begin + return 0; + end; + + procedure Do_Test (Dummy : Natural; Item : Buffer) + is + Position1 : Natural := First (Item); + Position2 : Natural := Item.First; -- Problem here + begin + null; + end; +end; diff --git a/gcc/testsuite/gnat.dg/sync_iface_test.ads b/gcc/testsuite/gnat.dg/sync_iface_test.ads new file mode 100644 index 00000000000..c172d7fa2b1 --- /dev/null +++ b/gcc/testsuite/gnat.dg/sync_iface_test.ads @@ -0,0 +1,11 @@ +package Sync_Iface_Test is + type Iface is limited interface; + function First (Obj : Iface) return Natural is abstract; + + protected type Buffer is new Iface with + procedure Dummy; + end; + overriding function First (Obj : Buffer) return Natural; + + procedure Do_Test (Dummy : Natural; Item : Buffer); +end;