> I can
> select foo('{}'::int4[]) -- ok
> select foo('{}') -- ok too
> but
> select foo(array[]) -- syntax error,
>
> my function can by like
Correct -- you cannot use the ARRAY constructor empty. If you need an
empty array, use '{}'. Search the archives for previous discussions on
this topic during the June/July timeframe. This might change for 7.5,
but don't count on it (at least not yet).
Joe