|
|
Coerces an expression into a USER library logical code pointer
(LCPTR).
Syntax
user ([library] value)
Formal Declaration
user:user ([library:str=''] value:any)
Parameters
- library
If this value is provided, System Debug restricts procedure name
searches to the indicated executable library. This restriction remains in
effect until the function's parameters have been completely evaluated.
The program file's group and account are used to fully qualify the
library file name if needed. The library must have been loaded by the
process. If this parameter is omitted, procedure name searches begin at
the first user library as specified in the LIBLIST= option of
the RUN command (if any). Strings longer than valid file names
are truncated to the maximum file name string length.
- value
An expression to be coerced. All types are valid.
Table 10-20 Derivation of the USER Bit Pattern
Parameter Type |
Action |
BOOL | 0.1 if TRUE, 0.0 if FALSE. |
U16 U32 SPTR | Set the SID part
to zero. Right justify the original value in the low-order 32 bits of the
offset part with zero fill. |
S16 S32 S64 | Set the SID part
to zero. Right justify the original value in the low-order 32 bits of the
offset part with sign extension. |
LONG Class | Transfer both parts of the address
unchanged. |
EADDR SADDR | Transfer the SID part
unchanged. Transfer the low-order 32 bits of the offset part. |
STR | Transfer the ASCII bit pattern for the last eight
characters in the string. Strings shorter than eight characters are treated
as if they were extended on the left with nulls. |
Examples
$nmdebug > wl user(,1c.304c)
USER $1c.304c
Coerce the simple long pointer into a USER logical code pointer.
$nmdebug > wl user(,sys(24.630))
USER $24.630
The coercion simply changes the associated logical file. Note
that no complicated conversion or range checking is performed.
$nmdebug > wl user("mylib.test" myproc )
USER $3f.4c04
We asked for the address of the procedure myproc. By providing a
library name, we restricted the search for the procedure to the executable
library named mylib.test.
Limitations, Restrictions
none
|