diff options
Diffstat (limited to 'src/backend/parser')
-rw-r--r-- | src/backend/parser/gram.y | 11 | ||||
-rw-r--r-- | src/backend/parser/parse_target.c | 40 |
2 files changed, 22 insertions, 29 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index db783ae0ba7..249c5907709 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -11,7 +11,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/parser/gram.y,v 2.458 2004/05/30 23:40:34 neilc Exp $ + * $PostgreSQL: pgsql/src/backend/parser/gram.y,v 2.459 2004/06/01 03:28:48 tgl Exp $ * * HISTORY * AUTHOR DATE MAJOR EVENT @@ -108,7 +108,6 @@ static void doNegateFloat(Value *v); OnCommitAction oncommit; ContainsOids withoids; List *list; - FastList fastlist; Node *node; Value *value; ColumnRef *columnref; @@ -6820,15 +6819,11 @@ opt_indirection: expr_list: a_expr { - FastList *dst = (FastList *) &$$; - makeFastList1(dst, $1); + $$ = list_make1($1); } | expr_list ',' a_expr { - FastList *dst = (FastList *) &$$; - FastList *src = (FastList *) &$1; - *dst = *src; - FastAppend(dst, $3); + $$ = lappend($1, $3); } ; diff --git a/src/backend/parser/parse_target.c b/src/backend/parser/parse_target.c index 2cf870d8848..3856005fab6 100644 --- a/src/backend/parser/parse_target.c +++ b/src/backend/parser/parse_target.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/parser/parse_target.c,v 1.119 2004/05/30 23:40:35 neilc Exp $ + * $PostgreSQL: pgsql/src/backend/parser/parse_target.c,v 1.120 2004/06/01 03:28:48 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -92,11 +92,9 @@ transformTargetEntry(ParseState *pstate, List * transformTargetList(ParseState *pstate, List *targetlist) { - FastList p_target; + List *p_target = NIL; ListCell *o_target; - FastListInit(&p_target); - foreach(o_target, targetlist) { ResTarget *res = (ResTarget *) lfirst(o_target); @@ -116,8 +114,8 @@ transformTargetList(ParseState *pstate, List *targetlist) * Target item is a single '*', expand all tables * (e.g., SELECT * FROM emp) */ - FastConc(&p_target, - ExpandAllTables(pstate)); + p_target = list_concat(p_target, + ExpandAllTables(pstate)); } else { @@ -173,34 +171,34 @@ transformTargetList(ParseState *pstate, List *targetlist) rte = addImplicitRTE(pstate, makeRangeVar(schemaname, relname)); - FastConc(&p_target, - expandRelAttrs(pstate, rte)); + p_target = list_concat(p_target, + expandRelAttrs(pstate, rte)); } } else { /* Plain ColumnRef node, treat it as an expression */ - FastAppend(&p_target, - transformTargetEntry(pstate, - res->val, - NULL, - res->name, - false)); + p_target = lappend(p_target, + transformTargetEntry(pstate, + res->val, + NULL, + res->name, + false)); } } else { /* Everything else but ColumnRef */ - FastAppend(&p_target, - transformTargetEntry(pstate, - res->val, - NULL, - res->name, - false)); + p_target = lappend(p_target, + transformTargetEntry(pstate, + res->val, + NULL, + res->name, + false)); } } - return FastListValue(&p_target); + return p_target; } |