Informix Error -4053
-4053 Function "name" has already been declared with a different prototype.
The function that is described in this FUNCTION statement has already been declared, and the previous declaration disagrees with this one in the number or type of the arguments. Review included files for declarations of this function, and make those statements consistent.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-4053 fires when a function is declared again with a different argument count or types than its earlier declaration — per the official guidance, the previous declaration disagrees with this one in the number or type of arguments.
- A function redeclared with a different argument count or type than its earlier declaration, per the official guidance — the direct, only cause.
Solutions / Resolution
- Review included files for declarations of this function, per the official guidance.
- Make those statements consistent, per the official guidance.
Examples
Conflicting prototypes
FUNCTION save(id INTEGER) RETURNING INTEGER
...
FUNCTION save(id INTEGER, name CHAR(30)) RETURNING INTEGER
-- -4053: argument counts disagree
Corrected
FUNCTION save(id INTEGER, name CHAR(30)) RETURNING INTEGER
Diagnostic Checks
- Check all declarations of the function across the module and its included files, and make the argument lists consistent.
Related Errors / Related Topics
- -4054 — "Function "name" has already been declared with a different return type." A related function-redeclaration error, about the return type disagreeing rather than the argument list.
A function's declarations disagree on argument count or type — make them consistent.