argc argv parsing support for Metal C programs

As of z/OS® V1R13, the argc argv parsing capability is added to Metal C programs. If your Metal C programs work with standard argc and argv arguments, the newly enabled parsing code generated by the compiler might cause problems.

If you use argc and argv in your main() function, you need to add CBC.SCCNOBJ dataset to the binder SYSLIB for the resolution of CCNZINIT and CCNZTERM routines (CCNZQINI and CCNZQTRM for LP64). The CCNZINIT and CCNZTERM routines need NAB established for their stack space. If you supply your own prolog and epilog for main(), you need to allocate 1K of extra space (2K for LP64) in addition to the DSA size suggested by the compiler in the global SET symbol &CCN_DSASZ.

For more information, see ARGPARSE | NOARGPARSE in z/OS XL C/C++ User's Guide.