I'm not sure if this should be considered a bug or not. At least in my case it
doesn't cause a problem. I think it could always be worked around with
explicit casts in any case, it just seems... wrong:

db=> create or replace function array_length(integer[]) returns integer
    as 'SELECT array_upper($1)-array_lower($1)+1'
    language sql
    strict immutable;

ERROR:  function array_upper(integer[]) does not exist
HINT:  No function matches the given name and argument types. You may need to add 
explicit typecasts.

db=> create or replace function array_length(anyarray) returns integer
     as 'SELECT array_upper($1)-array_lower($1)+1'
     language sql
     strict immutable;

CREATE FUNCTION


-- 
greg


---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to