Pragma directives allow a source file to issue directives to the compiler (and the rest of the toolchain) which affect the binary that is generated and how it can run. The results of some of the pragma options are written to the zcc_opt.def file which is used during the linking stage and the values contained within are available to the platform's startup code.
The following pragma:
#pragma output JustAName #pragma output WithaValue=2
Generates the following output in zcc_opt.def
IF !DEFINED_JustAName defc DEFINED_JustAName = 1 ENDIF IF !DEFINED_WithaValue defc DEFINED_WithaValue = 1 defc WithaValue = 2 ENDIF
#pragma output nostreams | No stdio disc files |
#pragma output nofileio | No fileio at all |