Informix Error -21608: You have exceeded the limits of 8 defines. Extra defines will be ignored.
Cause and resolution
You have exceeded the limits of 8 defines. Extra defines will be ignored.
If this internal error recurs, note all circumstances and contact IBM Informix Technical Support.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-21608 fires when an mkmessage input file's preprocessor uses more than 8 ^ifdef/
^ifndef macro defines — per the official guidance, defines past the eighth are ignored.
- More than 8 preprocessor defines used in the input file, per the official guidance — the direct, only cause.
Solutions / Resolution
- Reduce the number of preprocessor defines to 8 or fewer, per the official guidance's implication, or restructure the input to not need the extras.
Examples
N/A
No specific triggering statement is documented beyond exceeding 8 defines.
Diagnostic Checks
- Count the distinct macros defined via
-dMACRO/^ifdef/^ifndefin the input file, and reduce below 8 if exceeded.
Related Errors / Related Topics
- -21614 — "Expected identifier not found following ^ifdef or ^ifndef at line
line-number." A related preprocessor error, on malformed
^ifdef/^ifndefsyntax rather than exceeding the define limit.
More than 8 preprocessor defines were used — extras are silently ignored; reduce the count.