The Micro Focus Developer doc related to CBL_GET-CURRENT-DIR suggests this: "Use the "BY VALUE LENGTH OF directory-name SIZE 4" construct to pass the name-length parameter." Based on the explanation in the doc, if I have a MY-DIR-NAME PIC X(80 and a MY-DIR-NAME-LENGTH PIC 9(4) then I can MOVE LENGTH OF MY-DIR-NAME TO MY-DIR-NAME-LENGTH in order to initialize it to a value of 80 in this example. My question is about the terminology and concept of the "Use the "BY VALUE LENGTH OF directory-name SIZE 4" construct. I would like to see an example of this and/or any links to doc explaining this concept behind this construct.
I now can see how it might be used. Instead of setting up an actual MY-DIR-NAME-LENGTH variable in working storage to be initialized with the length of MY-DIR-NAME, you can just use the expression "BY VALUE LENGTH OF MY-DIR-NAME SIZE 4" as a phrase at the appropriate point in the CBL_GET_CURRENT_DIR library routine/command, thereby eliminating an extra variable and a separate statement to initialize it. However, the "SIZE 4" part... where is this explained?