
  PROCEDURE [INLINE] clp$make_record_value
    (    number_of_fields: clt$field_number;
     VAR work_area {input, output} : ^clt$work_area;
     VAR value: ^clt$data_value);

?? PUSH (LISTEXT := ON) ??

    clp$make_value (clc$record, work_area, value);
    IF value <> NIL THEN
      NEXT value^.field_values: [1 .. number_of_fields] IN work_area;
      IF value^.field_values <> NIL THEN
        RETURN;
      IFEND;
      RESET work_area TO value;
      value := NIL;
    IFEND;

  PROCEND clp$make_record_value;

*copyc clt$data_value
*copyc clt$field_number
*copyc clt$work_area
?? POP ??
*copyc clp$make_value
