On Tue, 2 Apr 2002, Tom Lane wrote:
> Matt Peterson <matt@caldera.com> writes:
>
> > + if(value == 0)
> > + {
> > + /* elog(NOTICE, "array_iterator: value is null"); */
> > + return (0);
> > + }
>
> This patch is certainly wrong, as it will break array_iterator for
> non-pointer datatypes (no, I do not believe your assertion to the
> contrary).
>
> More to the point, inserting explicit tests for null is an obsolete
> approach; the preferred way to do things these days is to mark the SQL
> declarations of such functions with "isStrict". Would you instead
> update contrib/array to rely on isStrict?
Are the array iterator functions supposed to act sort of like
=ANY/=ALL except across an array instead of a subselect? If so,
isStrict probably isn't right, since for an empty subselect the return
value does not depend on the element being searched for. If not,
that would probably be the easiest fix.