On 05-02-2013 14:37, Leyne, Sean wrote:
> Hello all,
>  
> Have run into a situation where I have a UDF which needs more than 10
> input parameters, but when I try to declare it in DDL the engine reports
> the following error:
>  
> This operation is not defined for system tables.
> SQL error code = -607.
> Invalid command.
> External functions cannot have more than 10 parameters.
>  
> With my 18+ years of using IB/FB I never ran into this issue, never had
> to use a UDF with more than 5 params, so I was surprised by the error.
>  
> Is there a ‘real’ reason why there is a parameter limit?  Or, is it a
> case that a limit was required for syntax purposes and someone thought
> that 10 was a good number?
>  

The implementation requires a limit, and the limit is 10.

Space are allocated in the stack for all parameters, and also passed all
(even the unused ones, but is ok for cdecl) parameters to the UDF.


Adriano

------------------------------------------------------------------------------
Free Next-Gen Firewall Hardware Offer
Buy your Sophos next-gen firewall before the end March 2013 
and get the hardware for free! Learn more.
http://p.sf.net/sfu/sophos-d2d-feb
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to