Informix Error -35221: Character string parameter cannot have an OUT mode: parameter name.
Cause and resolution
Character string parameter cannot have an OUT mode: parameter name.
CHAR(*) and VARCHAR(*) parameters cannot be used as OUT parameters. Change the parameter to CHAR[n].
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-35221 fires when a CHAR(*) or VARCHAR(*) parameter is declared as an OUT parameter — per
the official guidance, parameters using the unbounded (*) length form can't be used as OUT
parameters.
- A
CHAR(*)orVARCHAR(*)parameter declared withOUTmode, per the official guidance — the direct, only cause.
Solutions / Resolution
- Change the parameter to
CHAR[n](a fixed, bounded length), per the official guidance — the documented, only fix.
Examples
N/A
No specific triggering statement is documented beyond a CHAR(*)/VARCHAR(*) OUT parameter
declaration.
Diagnostic Checks
- Check the named parameter's declared type and mode — if it's
CHAR(*)/VARCHAR(*)withOUTmode, switch it to a boundedCHAR[n].
Related Errors / Related Topics
- -35205 — "Parameter parameter name already defined." Another parameter-declaration error.
- -35215 — "Undefined host variable or parameter: name." Another parameter-related error.
An unbounded CHAR(*)/VARCHAR(*) parameter was declared as OUT, which isn't supported —
change it to a bounded CHAR[n] instead.