1
0
mirror of https://github.com/postgres/postgres.git synced 2025-08-31 17:02:12 +03:00

Fix the raw-parsetree representation of star (as in SELECT * FROM or

SELECT foo.*) so that it cannot be confused with a quoted identifier "*".
Instead create a separate node type A_Star to represent this notation.
Per pgsql-hackers discussion of 2007-Sep-27.
This commit is contained in:
Tom Lane
2008-08-30 01:39:14 +00:00
parent 6253f9de67
commit 449a00fbbd
13 changed files with 223 additions and 106 deletions

View File

@@ -15,7 +15,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/nodes/copyfuncs.c,v 1.402 2008/08/28 23:09:45 tgl Exp $
* $PostgreSQL: pgsql/src/backend/nodes/copyfuncs.c,v 1.403 2008/08/30 01:39:13 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1697,6 +1697,14 @@ _copyFuncCall(FuncCall *from)
return newnode;
}
static A_Star *
_copyAStar(A_Star *from)
{
A_Star *newnode = makeNode(A_Star);
return newnode;
}
static A_Indices *
_copyAIndices(A_Indices *from)
{
@@ -3589,6 +3597,9 @@ copyObject(void *from)
case T_FuncCall:
retval = _copyFuncCall(from);
break;
case T_A_Star:
retval = _copyAStar(from);
break;
case T_A_Indices:
retval = _copyAIndices(from);
break;