(root)/
gcc-13.2.0/
gcc/
testsuite/
gnat.dg/
equal11.adb
--  { dg-do run }

with Equal11_Record;

procedure Equal11 is

  use Equal11_Record;

  R : My_Record_Type;
  L : My_Record_Type_List_Pck.List;
begin
  -- Single record
  R.F := 42;
  R.Put;
  if Put_Result /= 42 then
    raise Program_Error;
  end if;

  -- List of records
  L.Append ((F => 3));
  L.Append ((F => 2));
  L.Append ((F => 1));

  declare
    Expected : constant array (Positive range <>) of Integer :=
      (3, 2, 1);
    I : Positive := 1;
  begin
    for LR of L loop
      LR.Put;
      if Put_Result /= Expected (I) then
        raise Program_Error;
      end if;
      I := I + 1;
    end loop;
  end;
end Equal11;