11
11
*
12
12
*
13
13
* IDENTIFICATION
14
- * $PostgreSQL: pgsql/src/backend/parser/gram.y,v 2.510 2005/09/05 23:50:48 tgl Exp $
14
+ * $PostgreSQL: pgsql/src/backend/parser/gram.y,v 2.511 2005/09/23 22:25:25 momjian Exp $
15
15
*
16
16
* HISTORY
17
17
* AUTHORDATEMAJOR EVENT
@@ -623,10 +623,6 @@ OptRoleElem:
623
623
$$ = makeDefElem(" unencryptedPassword" ,
624
624
(Node *)makeString($3 ));
625
625
}
626
- | SYSID Iconst
627
- {
628
- $$ = makeDefElem(" sysid" , (Node *)makeInteger($2 ));
629
- }
630
626
| SUPERUSER_P
631
627
{
632
628
$$ = makeDefElem(" superuser" , (Node *)makeInteger(TRUE ));
@@ -680,17 +676,19 @@ OptRoleElem:
680
676
{
681
677
$$ = makeDefElem(" connectionlimit" , (Node *)makeInteger($3 ));
682
678
}
683
- | IN_P ROLE name_list
679
+ | VALID UNTIL Sconst
684
680
{
685
- $$ = makeDefElem(" addroleto " , (Node *)$3 );
681
+ $$ = makeDefElem(" validUntil " , (Node *)makeString( $3 ) );
686
682
}
687
- | IN_P GROUP_P name_list
683
+ /* Supported but not documented for roles, for use by ALTER GROUP.*/
684
+ | USER name_list
688
685
{
689
- $$ = makeDefElem(" addroleto " , (Node *)$3 );
686
+ $$ = makeDefElem(" rolemembers " , (Node *)$2 );
690
687
}
691
- | VALID UNTIL Sconst
688
+ /* The following are not supported by ALTER ROLE/USER/GROUP*/
689
+ | SYSID Iconst
692
690
{
693
- $$ = makeDefElem(" validUntil " , (Node *)makeString( $3 ));
691
+ $$ = makeDefElem(" sysid " , (Node *)makeInteger( $2 ));
694
692
}
695
693
| ADMIN name_list
696
694
{
@@ -700,9 +698,13 @@ OptRoleElem:
700
698
{
701
699
$$ = makeDefElem(" rolemembers" , (Node *)$2 );
702
700
}
703
- | USER name_list
701
+ | IN_P ROLE name_list
704
702
{
705
- $$ = makeDefElem(" rolemembers" , (Node *)$2 );
703
+ $$ = makeDefElem(" addroleto" , (Node *)$3 );
704
+ }
705
+ | IN_P GROUP_P name_list
706
+ {
707
+ $$ = makeDefElem(" addroleto" , (Node *)$3 );
706
708
}
707
709
;
708
710