Content deleted Content added
Peter Flass (talk | contribs) mNo edit summary |
Peter Flass (talk | contribs) →Preprocessor procedures: define ''open code'' |
||
Line 55:
===Preprocessor procedures===
A preprocessor procedure is a [[subroutine]] executed by the preprocessor. The procedure is delimited by <code>%PROCEDURE</code> and <code>%END</code> statements and can contain only preprocessor statements, without the leading '%'. It is invoked as a function reference from open code or another preprocessor procedure and returns a CHARACTER or FIXED value. When the procedure is invoked from ''open code'', outside of any preprocessor procedure, the arguments are passed ''by name'', that is they are interpreted as character strings delimited by commas or a right parenthesis, all leading, trailing, or imbedded blanks are significant and considered part of the argument.<ref name=ibm3lr40>{{cite book|last=IBM Corporation|title=Enterprise PL/I for z/OS PL/I for AIX WebSphere Developer for zSeries PL/I for Windows Language Reference|year=2005|url=http://pic.dhe.ibm.com/infocenter/pdthelp/v1r1/topic/com.ibm.entpli.doc_3.5/ibm3lr40.pdf}}</ref>{{rp|pp.508-509}}
==Preprocessor builtins==
|