Informix Error -1338: The function name has not been defined in any module in the program.
Cause and resolution
The function name has not been defined in any module in the program.
The named function is called from at least one module of the program, but it is defined in none. If you are using the Programmer's Environment, possibly one module was not defined as part of a multimodule program. If you are working at the command line, possibly one or more compiled .4go modules were omitted when the program files were concatenated to form the .4gi file.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-1338 fires when a function is called from at least one module but isn't defined in any module
of the program — per the official guidance, this typically happens one of two ways: in the
Programmer's Environment, a module wasn't included as part of a multimodule program
configuration; from the command line, one or more compiled .4go modules were omitted when
concatenating files into the .4gi.
- A module missing from the multimodule program configuration, per the official guidance — specific to building via the Programmer's Environment.
- A
.4gomodule omitted when concatenating files to build the.4gi, per the official guidance — specific to building from the command line.
Solutions / Resolution
- Ensure all necessary modules containing function definitions are properly included in the
program build, per the official guidance — check the multimodule configuration (Programmer's
Environment) or the command-line concatenation list (
.4gofiles) as appropriate.
Examples
A missing module in the command-line build
$ fglgo main.4go module_a.4go -o program.4gi
-- -1338: module_b.4go, which defines the called function, was omitted
Corrected
$ fglgo main.4go module_a.4go module_b.4go -o program.4gi
Diagnostic Checks
- Identify which module is supposed to define the missing function, and confirm it's
actually included in the build (Programmer's Environment configuration or command-line
.4golist).
Related Errors / Related Topics
- -1318 — "A parameter count mismatch has occurred between the calling function and the called function." A related function-call error, about signature mismatch rather than a missing definition entirely.
A called function isn't defined in any included module — check the multimodule build configuration.