Thread: Broken code in gram.y

Broken code in gram.y

From
Fernando Nasser
Date:
The OWNER production rules added to DROP DATABASE:

DropdbStmt:     DROP DATABASE database_name                               {
DropdbStmt*n =
 
makeNode(DropdbStmt);                                       n->dbname = $3;                                       $$ =
(Node*)n;                               }               | OWNER opt_equal name                               {
                            $$ = lconsi(4, makeList1($3));                               }               | OWNER
opt_equalDEFAULT                               {                                       $$ = lconsi(4, makeList1(NULL));
                             }               ;
 


Cause compiler warnings and are clearly returning the wrong type
(a List, instead of a Node).

(...)/pgsql/src/backend/parser/gram.y: In function
`yyparse':/home/fnasser/DEVO/pgsql/pgsql/src/backend/parser/gram.y:3205:
warning: assignment from incompatible pointer type
(...)/pgsql/src/backend/parser/gram.y:3209: warning: assignment from
incompatible pointer type


-- 
Fernando Nasser
Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario   M4P 2C9


Re: Broken code in gram.y

From
Fernando Nasser
Date:
Well,

Someone just dropped the DROP DATABASE statement rules right in the
middle of the CREATE DATABASE production rules!!!

Fernando



Fernando Nasser wrote:
> 
> The OWNER production rules added to DROP DATABASE:
> 
> DropdbStmt:     DROP DATABASE database_name
>                                 {
>                                         DropdbStmt *n =
> makeNode(DropdbStmt);
>                                         n->dbname = $3;
>                                         $$ = (Node *)n;
>                                 }
>                 | OWNER opt_equal name
>                                 {
>                                         $$ = lconsi(4, makeList1($3));
>                                 }
>                 | OWNER opt_equal DEFAULT
>                                 {
>                                         $$ = lconsi(4, makeList1(NULL));
>                                 }
>                 ;
> 
> Cause compiler warnings and are clearly returning the wrong type
> (a List, instead of a Node).
> 
> (...)/pgsql/src/backend/parser/gram.y: In function
> `yyparse':/home/fnasser/DEVO/pgsql/pgsql/src/backend/parser/gram.y:3205:
> warning: assignment from incompatible pointer type
> (...)/pgsql/src/backend/parser/gram.y:3209: warning: assignment from
> incompatible pointer type
> 
> --
> Fernando Nasser
> Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
> 2323 Yonge Street, Suite #300
> Toronto, Ontario   M4P 2C9
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
> 
> http://www.postgresql.org/users-lounge/docs/faq.html

-- 
Fernando Nasser
Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
2323 Yonge Street, Suite #300
Toronto, Ontario   M4P 2C9


Re: Broken code in gram.y

From
Bruce Momjian
Date:
Thanks.  Fixed.

---------------------------------------------------------------------------

Fernando Nasser wrote:
> Well,
> 
> Someone just dropped the DROP DATABASE statement rules right in the
> middle of the CREATE DATABASE production rules!!!
> 
> Fernando
> 
> 
> 
> Fernando Nasser wrote:
> > 
> > The OWNER production rules added to DROP DATABASE:
> > 
> > DropdbStmt:     DROP DATABASE database_name
> >                                 {
> >                                         DropdbStmt *n =
> > makeNode(DropdbStmt);
> >                                         n->dbname = $3;
> >                                         $$ = (Node *)n;
> >                                 }
> >                 | OWNER opt_equal name
> >                                 {
> >                                         $$ = lconsi(4, makeList1($3));
> >                                 }
> >                 | OWNER opt_equal DEFAULT
> >                                 {
> >                                         $$ = lconsi(4, makeList1(NULL));
> >                                 }
> >                 ;
> > 
> > Cause compiler warnings and are clearly returning the wrong type
> > (a List, instead of a Node).
> > 
> > (...)/pgsql/src/backend/parser/gram.y: In function
> > `yyparse':/home/fnasser/DEVO/pgsql/pgsql/src/backend/parser/gram.y:3205:
> > warning: assignment from incompatible pointer type
> > (...)/pgsql/src/backend/parser/gram.y:3209: warning: assignment from
> > incompatible pointer type
> > 
> > --
> > Fernando Nasser
> > Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
> > 2323 Yonge Street, Suite #300
> > Toronto, Ontario   M4P 2C9
> > 
> > ---------------------------(end of broadcast)---------------------------
> > TIP 5: Have you checked our extensive FAQ?
> > 
> > http://www.postgresql.org/users-lounge/docs/faq.html
> 
> -- 
> Fernando Nasser
> Red Hat Canada Ltd.                     E-Mail:  fnasser@redhat.com
> 2323 Yonge Street, Suite #300
> Toronto, Ontario   M4P 2C9
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo@postgresql.org so that your
> message can get through to the mailing list cleanly
> 

--  Bruce Momjian                        |  http://candle.pha.pa.us pgman@candle.pha.pa.us               |  (610)
853-3000+  If your life is a hard drive,     |  830 Blythe Avenue +  Christ can be your backup.        |  Drexel Hill,
Pennsylvania19026