Re: Implicit casts with generic arrays

Pavel Stehule <pavel.stehule@gmail.com>

From: "Pavel Stehule" <pavel.stehule@gmail.com>
To: "Zeugswetter Andreas ADI SD" <ZeugswetterA@spardat.at>
Cc: "Tom Lane" <tgl@sss.pgh.pa.us>, "Peter Eisentraut" <peter_e@gmx.net>, pgsql-hackers@postgresql.org
Date: 2007-06-06T08:17:28Z
Lists: pgsql-hackers
>
> > For example in 8.2 this is mapped to array_prepend:
> >
> > regression=# select 'x'::text || array['aa','bb','cc'];
> >    ?column?
> > --------------
> >  {x,aa,bb,cc}
> > (1 row)
> >
> > but with the experimental code you get textcat:
> >
> > catany=# select 'x'::text || array['aa','bb','cc'];
> >   ?column?
> > -------------
> >  x{aa,bb,cc}
> > (1 row)
>
> This is what I would have expected || to give, and not what 8.2 does.
> So disregarding the rest of the argument I think that array_[pre|ap]pend
> should have other operators.
>
> Andreas
>

I thing so current behave is more intuitive and practical. Result
x{aa,bb,cc} is nonsens. Array concation have to have higher priority
than text concation.

Pavel