fglcomp
The fglcomp tool compiles .4gl source files into .42m p-code modules.
Syntax
fglcomp [options] module[.4gl]
- options are described in Table 1.
- module.4gl is the program source file. The .4gl extension is optional.
Options
Option | Description |
---|---|
-V or --version |
Display version information for the tool. |
-h or --help |
Display options for the tool. Short help. |
-i { mbcs } |
Display information. -i mbcs displays
information about multibyte character set settings. See Multibyte character sets (MBCS). |
-S |
Dump Static SQL statements found in the source to stdout. |
-m |
Extract %"string" localized strings from source to stdout. |
-M |
Write error messages to standard output instead of creating a .err error file. |
-W warning-argument |
Produce warning messages. For a complete description, see Arguments for the -W option. |
-E |
Preprocess only. See Source preprocessor for more details. |
--timestamp |
Add compilation timestamp to build information in 42m header. See 42m module information. |
--omit-source-name |
Omit the source file name in the build information of the 42m header. See 42m module information. |
--tag=string |
Write a custom string in the build information of the 42m header. See 42m module information. |
-p option |
Preprocessing control, where option can be one of:
|
-G |
Produce .c and .h globals interface files for C-Extensions. |
-I path |
Provides a single path to search for include files. See Source preprocessor for more details. |
-D
ident[=value] |
Defines the macro 'ident' with an optional value (default is 1). See Source preprocessor for more details. |
-U
ident |
Undefines the macro 'ident'. See Source preprocessor for more details. |
--build-doc |
Generate source documentation. |
--doc-private |
When using the
--build-doc option, include
PRIVATE symbols to the documentation. |
--build-rdd |
While compiling, generate the
module.rdd Report Data Definition file (of
REPORT routines). |
--verbose |
Print detailed compilation information. |
--implicit=type |
Specify whether or not to compile
imported modules, where type can be one of:
|
-r or --resolve-calls |
Throw an error on references to undeclared functions. Each external function must be made
known to the compiler by |
--java-option=option |
Passes Java runtime options when initializing the JNI interface. See Java Interface for more details. |
Usage
fglcomp customers.4gl
If a compilation error occurs, the compiler generates
an error file with an .err extension. The error
file contains the original source code with error messages. Use the
option -M
to display the error messages to standard
error instead of producing the .err file.
Arguments for the -W option
The -W
option
can be used to check for wrong language usage, that must be
supported for backward compatibility. When used, this option
helps to write better source code.
The warning argument can be used as follows:
-W all
enables all warning flags.-W error
makes the compiler stop if any warning is raised, as if an error occurred.-W to-err-file
writes warnings to the .err file when this file is produced. By default warnings go to the stderr stream.-W unused
displays a message for all unused variables.-W return
displays a warning if the same function returns different number of values with severalRETURN
statements.-W stdsql
displays a message for all non-portable SQL statements or language instructions.-W print
displays a message when thePRINT
instruction is used outside aREPORT
.-W implicit
warns on references to undeclared functions. A function is undeclared if not defined in the current module or in any imported module. This warning is silently ignored ifIMPORT FGL
is not used.-W apidoc
prints a warning for invalid source documentation tags when using the --build-doc option.
-W
option also supports the negative form of arguments by using the
no-
prefix as in: no-return
, no-unused
,
no-stdsql
. You might need to use these negative forms in order to disable some
warning when using the -W all
option:
fglcomp -Wall -Wno-stdsql customers.4gl
Switches will be enabled/disabled in the order of appearance in the command line.