For a PROCEDURE with either the OPTIONS(MAIN) or the OPTIONS(FROMALIEN) attribute, the ONSNAP option specifies that the compiler should insert an ON STRINGRANGE SNAP; statement, an ON STRINGSIZE SNAP; statement, or both into the prologue code for that PROCEDURE. This can make it easier to determine the calling chain if the corresponding conditions are raised in other routines called from such a PROCEDURE.
.-NOONSNAP--------------------------. | .-+---+-----------. | | | '-,-' | | | V | | >>-+-ONSNAP--(----+-STRINGRANGE-+-+--)-+----------------------->< '-STRINGSIZE--'
The ONSNAP option has no affect on a PROCEDURE without either of these attributes.