?? RIGHT := 110 ??
MODULE ram$quit_package_corrections;
*copyc osd$default_pragmats
?? PUSH (LISTEXT := ON) ??
*copyc rac$status_id
*copyc rae$error_messages
*copyc rav$correction_package_header
*copyc rav$pc_var_decs_xref
*copyc clp$scan_parameter_list
*copyc clp$end_scan_command_file
*copyc osp$set_status_abnormal
?? POP ??

{ pdt quit_pdt (
{   status)

?? PUSH (LISTEXT := ON) ??

  VAR
    quit_pdt: [STATIC, READ, cls$pdt] clt$parameter_descriptor_table := [^quit_pdt_names, ^quit_pdt_params];

  VAR
    quit_pdt_names: [STATIC, READ, cls$pdt_names_and_defaults] array [1 .. 1] of
      clt$parameter_name_descriptor := [['STATUS', 1]];

  VAR
    quit_pdt_params: [STATIC, READ, cls$pdt_parameters] array [1 .. 1] of clt$parameter_descriptor := [

{ STATUS }
    [[clc$optional], 1, 1, 1, 1, clc$value_range_not_allowed, [NIL, clc$variable_reference,
      clc$array_not_allowed, clc$status_value]]];

?? POP ??

*copyc rah$quit_package_corrections

  PROCEDURE [XDCL] rap$quit_package_corrections (parameter_list: clt$parameter_list;
    VAR status: ost$status);

    status.normal := TRUE;

    clp$scan_parameter_list (parameter_list, quit_pdt, status);
    IF NOT status.normal THEN
      RETURN;
    IFEND;

    clp$end_scan_command_file (pc_utility_name, status);
    IF NOT status.normal THEN
      RETURN;
    IFEND;

    IF rav$correction_package_header^.number_of_elements > 0 THEN
      osp$set_status_abnormal (rac$status_id, rae$cor_package_not_generated, '', status);
      RETURN;
    IFEND;
  PROCEND rap$quit_package_corrections;
MODEND ram$quit_package_corrections;
