(root)/
gcc-13.2.0/
gcc/
testsuite/
gnat.dg/
atomic4.ads
with Ada.Containers.Vectors;

package Atomic4 is

   type String is limited null record;
   type String_Access is access all String;
   pragma Atomic (String_Access);

   type Reference is record
      Text : String_Access;
   end record;

   package Reference_Vectors is
     new Ada.Containers.Vectors (Natural, Reference);

   type Reader is tagged limited record
      Current_Reference : Reference;
      Reference_Stack   : Reference_Vectors.Vector;
   end record;

   procedure Next (Self : in out Reader'Class);

end Atomic4;