
  PROCEDURE [INLINE] pfp$build_cycle_list_pointer
    (    cycle_list_locator: pft$cycle_list_locator;
         p_catalog_file: {input^} pft$p_catalog_file;
     VAR p_cycle_list: {output} pft$p_cycle_list);

?? PUSH (LISTEXT := ON) ??

    VAR
      p_sequence_record: pft$p_sequence_record,
      p_sequence: pft$p_sequence;

    IF (cycle_list_locator.cycle_count = 0) THEN
      p_cycle_list := NIL;
    ELSE
      p_sequence_record := #PTR (cycle_list_locator.relative_cell_pointer,
            p_catalog_file^);
      p_sequence := ^p_sequence_record^.sequence;
      RESET p_sequence;
      NEXT p_cycle_list: [1 .. cycle_list_locator.cycle_count] IN p_sequence;
    IFEND;

  PROCEND pfp$build_cycle_list_pointer;

*copyc pft$cycle_list_locator
*copyc pft$p_catalog_file
*copyc pft$p_cycle_list
*copyc pft$p_sequence
*copyc pft$p_sequence_record
?? POP ??
