
  PROCEDURE [INLINE] clp$make_file_value
    (    file: fst$file_reference;
     VAR work_area {input, output} : ^clt$work_area;
     VAR value: ^clt$data_value);

?? PUSH (LISTEXT := ON) ??
*IF NOT $true(osv$unix)

    VAR
      size: fst$path_size;


    clp$make_value (clc$file, work_area, value);
*ELSE
    clp$make_a_file_value (clc$file, file, work_area, value);
*IFEND
*IF NOT $true(osv$unix)
    IF value <> NIL THEN
      size := STRLENGTH (file);
      WHILE (size > 0) AND (file (size) = ' ') DO
        size := size - 1;
      WHILEND;
      NEXT value^.file_value: [size] IN work_area;
      IF value^.file_value <> NIL THEN
        value^.file_value^ (1, size) := file (1, size);
        RETURN;
      IFEND;
      RESET work_area TO value;
      value := NIL;
    IFEND;
*IFEND

  PROCEND clp$make_file_value;

*copyc clt$data_value
*copyc clt$work_area
*copyc fst$file_reference
*IF NOT $true(osv$unix)
*copyc fst$path_size
*IFEND
?? POP ??
*IF NOT $true(osv$unix)
*copyc clp$make_value
*ELSE
*copyc clp$make_a_file_value
*IFEND
