The arguments in the function call must appear as comma-separated expressions in the same order as the function declaration parameters.
The arguments in the function call must be compatible with the parameter declarations in the function definition of an existing function, and must fit into the compatible type without a possible loss of information. For example, a BYTEINT argument in a function call is compatible with an INTEGER parameter declaration in the function definition, and also fits into the INTEGER type without any loss of information.
To pass an argument that is not compatible with the corresponding parameter type, explicitly convert the argument to the proper type in the function call.
A NULL argument is compatible with a parameter of any data type. For more information on the behavior of NULL arguments, see C/C++ UDF Behavior When Using NULL as a Literal Argument.
For information on compatible types and the precedence rules, see Compatible Types.