Skip to content
Snippets Groups Projects
Commit 43163cf5 authored by Thomas G. Lockhart's avatar Thomas G. Lockhart
Browse files

Fix string conversions for operators in DEFAULT and CHECK clauses.

parent 0829d2db
Branches
Tags
No related merge requests found
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 1.45 1997/09/13 03:15:46 thomas Exp $ * $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 1.46 1997/09/16 16:11:20 thomas Exp $
* *
* HISTORY * HISTORY
* AUTHOR DATE MAJOR EVENT * AUTHOR DATE MAJOR EVENT
...@@ -460,12 +460,12 @@ default_expr: AexprConst ...@@ -460,12 +460,12 @@ default_expr: AexprConst
{ {
if (!strcmp("<=", $2) || !strcmp(">=", $2)) if (!strcmp("<=", $2) || !strcmp(">=", $2))
elog(WARN,"boolean expressions not supported in DEFAULT",NULL); elog(WARN,"boolean expressions not supported in DEFAULT",NULL);
$$ = nconc( $1, lcons( $2, $3)); $$ = nconc( $1, lcons( makeString( $2), $3));
} }
| Op default_expr | Op default_expr
{ $$ = lcons( $1, $2); } { $$ = lcons( makeString( $1), $2); }
| default_expr Op | default_expr Op
{ $$ = lcons( $2, $1); } { $$ = lappend( $1, makeString( $2)); }
; ;
opt_null: NOT PNULL { $$ = TRUE; } opt_null: NOT PNULL { $$ = TRUE; }
...@@ -635,6 +635,9 @@ printf("in ConstraintDef\n"); ...@@ -635,6 +635,9 @@ printf("in ConstraintDef\n");
constr->type = CONSTR_CHECK; constr->type = CONSTR_CHECK;
constr->name = NULL; constr->name = NULL;
constr->def = FlattenStringList($2); constr->def = FlattenStringList($2);
#ifdef PARSEDEBUG
printf("ConstraintDef: string is %s\n", (char *) constr->def);
#endif
$$ = constr; $$ = constr;
} }
; ;
...@@ -689,15 +692,15 @@ printf( "Id is %s\n", $1); ...@@ -689,15 +692,15 @@ printf( "Id is %s\n", $1);
$$ = lappend( $$, makeString(")")); $$ = lappend( $$, makeString(")"));
} }
| constraint_elem Op constraint_elem | constraint_elem Op constraint_elem
{ $$ = nconc( $1, lcons( $2, $3)); } { $$ = nconc( $1, lcons( makeString( $2), $3)); }
| constraint_elem AND constraint_elem | constraint_elem AND constraint_elem
{ $$ = nconc( $1, lcons( makeString( "AND"), $3)); } { $$ = nconc( $1, lcons( makeString( "AND"), $3)); }
| constraint_elem OR constraint_elem | constraint_elem OR constraint_elem
{ $$ = nconc( $1, lcons( makeString( "OR"), $3)); } { $$ = nconc( $1, lcons( makeString( "OR"), $3)); }
| Op constraint_elem | Op constraint_elem
{ $$ = lcons( $1, $2); } { $$ = lcons( makeString( $1), $2); }
| constraint_elem Op | constraint_elem Op
{ $$ = lcons( $2, $1); } { $$ = lappend( $1, makeString( $2)); }
; ;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment