 |
» |
|
 |
|
 |

Copyright (c) Digital Equipment Corporation 1993. All rights reserved
PRODUCT: VAX PL/I, Version 3.5
OP/SYS: OpenVMS VAX Versions 5.0, 5.0-1, 5.0-2, 5.1, 5.1-B, 5.1-1,
5.2, 5.2-1, 5.3, 5.3-1, 5.3-2, 5.4,
5.4-1, 5.4-2, 5.4-3, 5.5, 5.5-1,
5.5-2, 6.0
SOURCE: Digital Customer Support Center
SYMPTOMS:
A PL/I program calling SYS$FORMAT_AUDIT on a V5.0 through V5.5-2 OpenVMS
VAX system receives a BADPARAM return status.
A PL/I program calling SYS$FORMAT_AUDIT on a V6.0 OpenVMS VAX system
receives a LIB-E-ACTIMAGE, error activating image !AS error.
A PL/I program calling SYS$FORMAT_AUDIT receives the following error
when compiling with V3.5 PL/I:
%PLIG-E-ARGOMIT, An argument can be omitted with the ,, notation only when
the called procedure is declared as OPTIONS(VARIABLE) or when
the formal parameter is declared with the OPTIONAL attribute.
At line number 46 in DISK:[DIRECTORY]PROG_NAME.PLI;1.
DIGITAL RESPONSE:
This problem has been reported to Engineering.
WORKAROUND:
Extract the module SYS$FORMAT_AUDIT from PLI$STARLET using the
following command:
$ LIB/EXTRACT=SYS$FORMAT_AUDIT/OUT=sys$format_audit.txt -
_$ SYS$LIBRARY:PLI$STARLET.TLB
Edit SYS$FORMAT_AUDIT.TXT so that the declaration portion of the
module looks like this:
dcl SYS$FORMAT_AUDIT entry (
fixed binary(31) value optional, <- Added 'optional'
character(*) reference, <- Added 'reference'
fixed binary(15) reference optional,
character(*) optional, <- Added 'optional'
fixed binary(15) reference optional,
character(*) optional,
entry value optional,
bit(32) aligned value optional)
returns (fixed binary(31));
Replace the module by executing this command:
$ LIB/REPLACE SYS$LIBRARY:PLI$STARLET.TLB sys$format_audit.txt
Recompile and relink your program.
ANALYSIS:
The current definition file in PLI$STARLET defines the SYS$FORMAT_AUDIT
routine with the following errors:
- The first argument does not contain the 'optional' keyword. The
default would be a required parameter.
- The second argument does not contain the 'reference' keyword. The
default would be passing the parameter by descriptor.
- The fourth argument does not contain the 'optional' keyword. The
default would be a required parameter.
By making the above changes to the definition, the routine will work as
expected.
REFERENCE(S):
OpenVMS System Services Reference Manual:A-GETMSG, May 1993, (AA-PV6FA-TK),
pp SYS1-319 to sys1-322.
|
buy online or call 1.800.AT.COMPAQ
|
|