The first version of IEFBR14 delivered with MVS must have been the shortest, incorrect version of a program ever delivered by IBM (or anybody else).

The first version consisted of the line

BR 14

, which is just a "return to caller."
Rather useful, as a NOP in JCL.
And it would have been perfect, had it set the return code to 0.
The next release fixed the bug by adding another line, so the current version now reads :

SR 15,15 BR 14

IEFBR14 is usually used in JCL for allocating files.
By adding a DD card with the new file attributes, the step won't do a thing but allocate the new file.

For example, running this job will create the sequential file 'SOME.SEQ.FILE' with the record format as fixed blocked (FB), logical record length as 80, block size as 5600 with 8 cylinders as primary allocation and 1 cylinder as extended allocation.

//JOBNAME JOB  (...)
//ALLOC   EXEC PGM=IEFBR14
//FILE    DD   DISP=(NEW,CATLG,DELETE),
//             DSN=SOME.SEQ.FILE,
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=5600,DSORG=PS),
//             SPACE=(CYL,(8,1))

Log in or register to write something here or to contact authors.