Informix Error -4037: Multiple declarations of function "name".
Cause and resolution
Multiple declarations of function "name".
Although you can declare multiple distinct versions of a user-defined function, you cannot do so for functions such as a name that IBM Informix software defines.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-4037 fires when a function name that IBM Informix software itself defines is declared more than once — per the official guidance, multiple distinct versions of a user-defined function are allowed, but not for built-in function names.
- A built-in (IBM Informix-defined) function name redeclared by the user, per the official guidance — the direct, only cause.
Solutions / Resolution
- Rename the user-declared function to avoid colliding with the built-in name.
Examples
Redeclaring a built-in function name
FUNCTION today()
-- -4037: today is a built-in function name
END FUNCTION
Corrected
FUNCTION getBusinessDate()
...
END FUNCTION
Diagnostic Checks
- Check whether the redeclared function name is one IBM Informix software already defines, and rename the user function if so.
Related Errors / Related Topics
No closely related error codes are cross-referenced for -4037 in this set yet.
A user-declared function shares a name IBM Informix software already defines — rename the user's function.