From 7f76eab140e703b7847b107245a669e2010886c0 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 19 Jul 1999 00:26:20 +0000 Subject: Rewrite parser's handling of INSERT ... SELECT so that processing of the SELECT part of the statement is just like a plain SELECT. All INSERT-specific processing happens after the SELECT parsing is done. This eliminates many problems, e.g. INSERT ... SELECT ... GROUP BY using the wrong column labels. Ensure that DEFAULT clauses are coerced to the target column type, whether or not stored clause produces the right type. Substantial cleanup of parser's array support. --- src/include/parser/parse_expr.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/include/parser/parse_expr.h') diff --git a/src/include/parser/parse_expr.h b/src/include/parser/parse_expr.h index cbc4095e330..3bd4d3fb47c 100644 --- a/src/include/parser/parse_expr.h +++ b/src/include/parser/parse_expr.h @@ -1,12 +1,12 @@ /*------------------------------------------------------------------------- * - * parse_exer.h + * parse_expr.h * * * * Copyright (c) 1994, Regents of the University of California * - * $Id: parse_expr.h,v 1.13 1999/07/15 23:04:02 momjian Exp $ + * $Id: parse_expr.h,v 1.14 1999/07/19 00:26:16 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -16,8 +16,12 @@ #include "parser/parse_node.h" #include "parser/parse_type.h" +#define EXPR_COLUMN_FIRST 1 +#define EXPR_RELATION_FIRST 2 + extern Node *transformExpr(ParseState *pstate, Node *expr, int precedence); extern Oid exprType(Node *expr); +extern int32 exprTypmod(Node *expr); extern Node *parser_typecast2(Node *expr, Oid exprType, Type tp, int32 attypmod); #endif /* PARSE_EXPR_H */ -- cgit v1.2.3