Below is an overview of the compilation options and parameters that have an influence on how the completed source code is checked by the compiler and how it is generated into Natural internal object code that can be interpreted and executed by the Natural runtime system.
For more information on the Natural compiler and the different system commands for compiling source code, see the section Natural Compiler in the Natural System Architecture documentation.
Compilation options can be specified at the following levels:
in the Natural parameter module by specifying the
by specifying the profile parameters
by specifying
by specifying
one or multiple OPTIONS statements 
                           
(offering the same options as the
                                        COMPOPT system command and,
                                        in addition, Natural
                                           Optimizer Compiler options);
                           
SET
                                             GLOBALS statement (only session parameters
                                       LS,
                                       PS,
                                       ZP)
                           
The settings of the following profile or session parameters are considered during compilation and may give rise to an error message in case the source code contains different settings:
| Parameter Name | Short Description | Comment | 
|---|---|---|
 CFICU 
                         |  
                                
                        Unicode and Code Page Support | Output of Unicode constants in I/O statements
                                    (for example, WRITE U'ABC') is allowed only when
                                    CFICU=ON.
                         |  
                               
                     
CP |  
                                
                        Default Code Page Name | Specifies the code page of the source. | 
 DC 
                         |  
                                
                        Character for Decimal Point Notation | Character used for separating integer/precision digits when defining fields of format N or P and constants. | 
 FS 
                         |  
                                
                        Format Specification | Allows or disallows the use of variables that were not defined before. | 
 ID 
                         |  
                                
                        Input Delimiter Character | For example, to delimit values in an
                                    INIT clause.
                         |  
                               
                     
 LS 
                         |  
                                
                        Line Size | Specifies the default size for a print line in a
                                    report (0 - 31). The setting can be overwritten by specifying an explicit
                                    FORMAT statement in
                                    the source code.
                         |  
                               
                     
 PS 
                         |  
                                
                        Page Size | Maximum number of lines that may be output by a
                                    single I/O statement (for example, WRITE). Non-compliance with
                                    the basic setting will cause an error. The setting can be overwritten by
                                    specifying an explicit FORMAT statement in the source
                                    code.
                         |  
                               
                     
 SF 
                         |  
                                
                        Spacing Factor | Number of spaces to be inserted between field
                                    settings of columns on Natural reports created using a
                                    DISPLAY statement.
                                    The setting can be overwritten by specifying an explicit
                                    FORMAT statement in
                                    the source code.
                         |  
                               
                     
SOSI |  
                                
                        Shift-Out/Shift-In Codes for Double-Byte Character Set | Specifies the shift characters to identify a double-byte character set (DBCS) string. | 
 ZP 
                         |  
                                
                        Zero Printing | Output of blanks or zeros for a numerical
                                    constant which contains a value of all zeros. The setting can be overwritten by
                                    specifying an explicit FORMAT statement in the source
                                    code.
                         |