diff options
author | Vadim B. Mikheev <vadim4o@yahoo.com> | 1998-02-27 16:07:02 +0000 |
---|---|---|
committer | Vadim B. Mikheev <vadim4o@yahoo.com> | 1998-02-27 16:07:02 +0000 |
commit | b0571ebf65a9d9772a8ac0a0e231477fb36859dc (patch) | |
tree | 03de48bc219aadc5b40c04c2c491115c102624a5 /src/backend/parser/parse_expr.c | |
parent | 96ac738269d04c1402f1f459bfdfe0a11d979471 (diff) | |
download | postgresql-b0571ebf65a9d9772a8ac0a0e231477fb36859dc.tar.gz postgresql-b0571ebf65a9d9772a8ac0a0e231477fb36859dc.zip |
In '(a,b,...) Op [ANY|ALL] (SubSelect)' Op is restricted to
'=' and '<>'.
Diffstat (limited to 'src/backend/parser/parse_expr.c')
-rw-r--r-- | src/backend/parser/parse_expr.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c index 62a53976a5b..f4cf3247628 100644 --- a/src/backend/parser/parse_expr.c +++ b/src/backend/parser/parse_expr.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.22 1998/02/26 04:33:30 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/parser/parse_expr.c,v 1.23 1998/02/27 16:07:02 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -266,7 +266,11 @@ transformExpr(ParseState *pstate, Node *expr, int precedence) if (length(left_expr) != length(right_expr)) elog(ERROR, "parser: Subselect has too many or too few fields."); - + + if (length(left_expr) > 1 && + strcmp (op, "=") != 0 && strcmp (op, "<>") != 0) + elog(ERROR, "parser: '%s' is not relational operator", op); + sublink->oper = NIL; foreach(elist, left_expr) { |