To answer this question, we need to understand the purpose of the CALL
statement and the parameters being passed.
In this code snippet, the CALL
statement is used to call a subroutine named 'CBLTDLI'. The USING
phrase is used to pass parameters to the subroutine.
The parameters being passed are:
- 'GU ' - This is a control option indicating that the utility function should be performed.
- LS-PCB-MASK - This is a parameter used to specify which segments should be included in the retrieval.
- WS-IO-AREA - This is a parameter used to pass the input/output area for the utility function.
Now, let's analyze the options:
Option A) Will retrieve segment C and parentage will be set at segment C - This option is incorrect. According to the code snippet, the segment to be retrieved is determined by the value of the LS-PCB-MASK parameter, not by the CALL statement. The parentage refers to the relationship between segments, and it is not mentioned in the code snippet.
Option B) Will retrieve segment C and parentage will be set at segment A - This option is correct. The LS-PCB-MASK parameter is passed to the subroutine, indicating that segment C should be retrieved. The parentage, which refers to the relationship between segments, is not specified in the code snippet.
Option C) Will retrieve segment A and parentage will be set at segment A - This option is incorrect. The LS-PCB-MASK parameter is passed to the subroutine, indicating that segment C should be retrieved, not segment A.
Option D) Will retrieve segment A and parentage will be set at segment C - This option is incorrect. The LS-PCB-MASK parameter is passed to the subroutine, indicating that segment C should be retrieved, not segment A.
Option E) Error out - This option is incorrect. There is no indication in the code snippet that an error will occur.
Based on the analysis above, the correct answer is B) Will retrieve segment C and parentage will be set at segment A. This option aligns with the code snippet provided.