Example: using qualification in C
The examples below use the following program.
LOAD MODULE NAME: MAINMOD
SOURCE FILE NAME: MVSID.SORTMAIN.C
short length = 40;
main ()
{
long *table;
void (*pf)();
table = malloc(sizeof(long)*length);
⋮
pf = fetch("SORTMOD");
(*pf)(table);
⋮
release(pf);
⋮
}
LOAD MODULE NAME: SORTMOD
SOURCE FILE NAME: MVSID.SORTSUB.C
short length = 40;
short sn = 3;
void (long table[])
{
short i;
for (i = 0; i < length-1; i++) {
short j;
for (j = i+1; j < length; j++) {
float sn = 3.0;
short temp;
temp = table[i];
⋮
>>> z/OS Debugger is given <<<
>>> control here. <<<
⋮
table[i] = table[j];
table[j] = temp;
}
}
}
When z/OS® Debugger receives
control, variables i
, j
, temp
, table
,
and length
can be specified without qualifiers in
a command. If variable sn
is referenced, z/OS Debugger uses
the variable that is a float
. However, the names
of the blocks and compile units differ, maintaining compatibility
with the operating system.