On 20 December 2012 11:51, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> While reconsidering the various not-too-satisfactory fixes we thought of
> back then, I had a sudden thought. Instead of having a COMMUTATOR or
> NEGATOR forward reference create a "shell" operator and link to it,
> why not simply *ignore* such references? Then when the second operator
> is defined, go ahead and fill in both links?
Ignore with warning sounds pretty good. So it would go something like this?
# CREATE OPERATOR < (... COMMUTATOR >);
WARNING: COMMUTATOR > (foo, foo) undefined, ignoring.
CREATE OPERATOR
# CREATE OPERATOR > (... COMMUTATOR <);
CREATE OPERATOR
Cheers,
BJ