]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Make all valid uses of the COLLATE clause yield the same result: a syntax
authorPeter Eisentraut <peter_e@gmx.net>
Sat, 6 Sep 2003 14:01:51 +0000 (14:01 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Sat, 6 Sep 2003 14:01:51 +0000 (14:01 +0000)
error.  There is no point in providing some kind of forward compatibility
now, because no one can tell what a future implementation will look like.

src/backend/parser/gram.y

index 5bdbe012a9538b5ab078fa4717c2bbd4d3bd9af6..45671f1b7be034cc7b5a110912dff96838be9b36 100644 (file)
@@ -11,7 +11,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.430 2003/08/22 20:34:33 tgl Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.431 2003/09/06 14:01:51 petere Exp $
  *
  * HISTORY
  *       AUTHOR                        DATE                    MAJOR EVENT
@@ -294,7 +294,7 @@ static void doNegateFloat(Value *v);
                                Bit ConstBit BitWithLength BitWithoutLength
 %type <str>            character
 %type <str>            extract_arg
-%type <str>            opt_charset opt_collate
+%type <str>            opt_charset
 %type <ival>   opt_numeric opt_decimal
 %type <boolean> opt_varying opt_timezone
 
@@ -441,7 +441,6 @@ static void doNegateFloat(Value *v);
 %right         UMINUS
 %left          '[' ']'
 %left          '(' ')'
-%left          COLLATE
 %left          TYPECAST
 %left          '.'
 /*
@@ -1461,19 +1460,13 @@ TableElement:
                        | TableConstraint                                       { $$ = $1; }
                ;
 
-columnDef:     ColId Typename ColQualList opt_collate
+columnDef:     ColId Typename ColQualList
                                {
                                        ColumnDef *n = makeNode(ColumnDef);
                                        n->colname = $1;
                                        n->typename = $2;
                                        n->constraints = $3;
                                        n->is_local = true;
-
-                                       if ($4 != NULL)
-                                               ereport(NOTICE,
-                                                               (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
-                                                                errmsg("CREATE TABLE / COLLATE is not yet implemented; clause ignored")));
-
                                        $$ = (Node *)n;
                                }
                ;
@@ -3843,17 +3836,12 @@ DropdbStmt: DROP DATABASE database_name
  *****************************************************************************/
 
 CreateDomainStmt:
-                       CREATE DOMAIN_P any_name opt_as Typename ColQualList opt_collate
+                       CREATE DOMAIN_P any_name opt_as Typename ColQualList
                                {
                                        CreateDomainStmt *n = makeNode(CreateDomainStmt);
                                        n->domainname = $3;
                                        n->typename = $5;
                                        n->constraints = $6;
-
-                                       if ($7 != NULL)
-                                               ereport(NOTICE,
-                                                               (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
-                                                                errmsg("CREATE DOMAIN / COLLATE is not yet implemented; clause ignored")));
                                        $$ = (Node *)n;
                                }
                ;
@@ -5463,11 +5451,6 @@ opt_charset:
                        | /*EMPTY*/                                                             { $$ = NULL; }
                ;
 
-opt_collate:
-                       COLLATE ColId                                                   { $$ = $2; }
-                       | /*EMPTY*/                                                             { $$ = NULL; }
-               ;
-
 ConstDatetime:
                        TIMESTAMP '(' Iconst ')' opt_timezone
                                {
@@ -5753,15 +5736,6 @@ qual_all_Op:
 a_expr:                c_expr                                                                  { $$ = $1; }
                        | a_expr TYPECAST Typename
                                        { $$ = makeTypeCast($1, $3); }
-                       | a_expr COLLATE ColId
-                               {
-                                       FuncCall *n = makeNode(FuncCall);
-                                       n->funcname = SystemFuncName($3);
-                                       n->args = makeList1($1);
-                                       n->agg_star = FALSE;
-                                       n->agg_distinct = FALSE;
-                                       $$ = (Node *) n;
-                               }
                        | a_expr AT TIME ZONE c_expr
                                {
                                        FuncCall *n = makeNode(FuncCall);