Informix Error -4137: Embedded C code is allowed in compiled-4GL programs only.
Cause and resolution
Embedded C code is allowed in compiled-4GL programs only.
A BEGIN_C and END_C block can be included only in compiled NewEra programs. It is not valid in a interpreted (p-code) NewEra program.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-4137 fires when a BEGIN_C/END_C block appears in a NewEra program that isn't
compiled — per the official guidance, embedded C code blocks are only valid in compiled
NewEra programs, not interpreted (p-code) ones.
- A
BEGIN_C/END_Cblock in an interpreted (p-code) NewEra program, per the official guidance — the direct, only cause.
Solutions / Resolution
- Remove the embedded C code, or compile the program instead of running it interpreted, consistent with the official guidance's identification of compiled-only support.
Examples
Checking the build mode
4gl -c myprogram.4gl
-- compiled mode; embedded C is permitted
Diagnostic Checks
- Check whether the program is being compiled or run interpreted, and remove
BEGIN_C/END_Cblocks, or switch to compiled mode, accordingly.
Related Errors / Related Topics
No closely related error codes are cross-referenced for -4137 in this set yet.
A BEGIN_C/END_C block appears in an interpreted NewEra program — remove it, or compile the
program instead.