This is original code:
?
? CALL USER DEFINED ROUTINE TO XREF TO A FUND/FUNCTION/ACCOUNT#
?
C ARGLSR BEGSR
C AGL@1 PLIST
C PARM P@MODE MODE X=SHUTDOWN
C PARM P@CMD COMMAND TO EXECUTE
C PARM P@PYT PAYER TYPE
C PARM P@PYR PAYER CODE
C PARM P@PGM PROGRAM
C PARM P@DPT DEPT
C PARM P@LOC LOCATION
C PARM P@CLI CLIENT#
C PARM P@STF STAFF#
C PARM P@SRV SERVICE
C PARM P@FND RESULT: FUND (ALPH
C PARM P@FNC RESULT: FUNCTION ""
C PARM P@ACC RESULT: ACCOUNT
?
C EVAL P@FND = BLANKS
C EVAL P@FNC = BLANKS
C EVAL P@ACC = ZEROS
?
C IF ARGLFF <> BLANKS
C AND ARO(24) = 'Y'
?
C MOVE IN91 S@@91
?
C CALL ARGLFF AGL@1 91
?
C IF IN91 = ON
C MOVE BLANKS ARGLFF
C ENDIF
?
C MOVE S@@91 IN91
?*
C ENDIF
C ENDSR
this is how it converts
// CALL USER DEFINED ROUTINE TO XREF TO A FUND/FUNCTION/ACCOUNT#
BEGSR ARGLSR;
P@FND = *BLANKS;
P@FNC = *BLANKS;
P@ACC = *ZEROS;
IF ARGLFF <> *BLANKS AND ARO(24) = 'Y';
C MOVE *IN91 S@@91
RGLF(P@MODE:P@CMD:P@PYT:P@PYR:P@PGM:P@DPT:P@LOC:P@CLI:P@STF:P@SRV:P@FND:P@FNC:P@ACC);
IF *IN91 = *ON;
C MOVE *BLANKS ARGLFF
ENDIF;
C MOVE S@@91 *IN91
ENDIF;
ENDSR;
Notice the call is truncated since it has a long parm list?
This is original code: ? ? CALL USER DEFINED ROUTINE TO XREF TO A FUND/FUNCTION/ACCOUNT# ? C ARGLSR BEGSR C AGL@1 PLIST C PARM P@MODE MODE X=SHUTDOWN C PARM P@CMD COMMAND TO EXECUTE C PARM P@PYT PAYER TYPE C PARM P@PYR PAYER CODE C PARM P@PGM PROGRAM C PARM P@DPT DEPT C PARM P@LOC LOCATION C PARM P@CLI CLIENT# C PARM P@STF STAFF# C PARM P@SRV SERVICE C PARM P@FND RESULT: FUND (ALPH C PARM P@FNC RESULT: FUNCTION "" C PARM P@ACC RESULT: ACCOUNT ? C EVAL P@FND = BLANKS C EVAL P@FNC = BLANKS C EVAL P@ACC = ZEROS ? C IF ARGLFF <> BLANKS C AND ARO(24) = 'Y' ? C MOVE IN91 S@@91 ? C CALL ARGLFF AGL@1 91 ? C IF IN91 = ON C MOVE BLANKS ARGLFF C ENDIF ? C MOVE S@@91 IN91 ?* C ENDIF C ENDSR
this is how it converts
Notice the call is truncated since it has a long parm list?