diff --git a/src/interfaces/ecpg/ChangeLog b/src/interfaces/ecpg/ChangeLog index 416081aa1bc6b8a1ded6b27659f27f0af7591534..f6ae819dd4b5083fab08a70d9e33cc669fc9e5f0 100644 --- a/src/interfaces/ecpg/ChangeLog +++ b/src/interfaces/ecpg/ChangeLog @@ -1492,6 +1492,10 @@ Sun Jun 15 11:18:58 CEST 2003 - Applied multi-threading patch by Lee Kindess <lkindness@csl.co.uk> - Changed order of types in enum to make working with these easier. + +Tue Jun 17 08:45:14 CEST 2003 + + - Fixed several parsing bugs. - Set ecpg version to 3.0.0 - Set ecpg library to 4.0.0 - Set pgtypes library to 1.0.0 diff --git a/src/interfaces/ecpg/ecpglib/typename.c b/src/interfaces/ecpg/ecpglib/typename.c index c3293984715ec49208b4283d15f4990ac7b2d219..4967674e19b3801995e1250cff611b9f84b7dca9 100644 --- a/src/interfaces/ecpg/ecpglib/typename.c +++ b/src/interfaces/ecpg/ecpglib/typename.c @@ -1,4 +1,4 @@ -/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/typename.c,v 1.4 2003/06/15 04:07:58 momjian Exp $ */ +/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/typename.c,v 1.5 2003/06/17 07:28:22 meskes Exp $ */ #define POSTGRES_ECPG_INTERNAL #include "postgres_fe.h" @@ -49,13 +49,13 @@ ECPGtype_name(enum ECPGttype typ) case ECPGt_char_variable: return "char"; case ECPGt_numeric: - return "numeric"; + return "Numeric"; case ECPGt_date: - return "date"; + return "Date"; case ECPGt_timestamp: - return "timestamp"; + return "Timestamp"; case ECPGt_interval: - return "interval"; + return "Interval"; default: abort(); } diff --git a/src/interfaces/ecpg/preproc/pgc.l b/src/interfaces/ecpg/preproc/pgc.l index fc3c9440321e18defa921acbbe28e3a74ea38db8..b70025065f642465cdbc4ff287185693812aab77 100644 --- a/src/interfaces/ecpg/preproc/pgc.l +++ b/src/interfaces/ecpg/preproc/pgc.l @@ -12,7 +12,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.115 2003/06/16 16:58:10 meskes Exp $ + * $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/pgc.l,v 1.116 2003/06/17 07:28:22 meskes Exp $ * *------------------------------------------------------------------------- */ @@ -231,7 +231,7 @@ ccomment "//".*\n space [ \t\n\r\f] horiz_space [ \t\f] -newline [\n\r] +newline [\n\r] non_newline [^\n\r] comment ("--"{non_newline}*) @@ -613,7 +613,7 @@ cppline {space}*#(.*\\{space})+.* else return S_ANYTHING; } -<C>{ccomment} { /* ignore */ } +<C>{ccomment} { ECHO; } <C>{xch} { char* endptr; diff --git a/src/interfaces/ecpg/preproc/preproc.y b/src/interfaces/ecpg/preproc/preproc.y index 0bb41459031fce687dcce77bb7e650491a2a6a6d..d96b6500cfd18eb2f20cf24ef6c8b754920a7431 100644 --- a/src/interfaces/ecpg/preproc/preproc.y +++ b/src/interfaces/ecpg/preproc/preproc.y @@ -1,4 +1,4 @@ -/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/Attic/preproc.y,v 1.232 2003/06/16 16:58:11 meskes Exp $ */ +/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/Attic/preproc.y,v 1.233 2003/06/17 07:28:22 meskes Exp $ */ /* Copyright comment */ %{ @@ -4417,7 +4417,7 @@ single_vt_type: common_type else if (strcmp($1, "numeric") == 0) { $$.type_enum = ECPGt_numeric; - $$.type_str = EMPTY; + $$.type_str = make_str("Numeric"); $$.type_dimension = make_str("-1"); $$.type_index = make_str("-1"); $$.type_sizeof = NULL; @@ -4425,7 +4425,7 @@ single_vt_type: common_type else if (strcmp($1, "decimal") == 0) { $$.type_enum = ECPGt_numeric; - $$.type_str = EMPTY; + $$.type_str = make_str("Numeric"); $$.type_dimension = make_str("-1"); $$.type_index = make_str("-1"); $$.type_sizeof = NULL; @@ -4457,7 +4457,7 @@ single_vt_type: common_type else if (strcmp($1, "interval") == 0) { $$.type_enum = ECPGt_interval; - $$.type_str = EMPTY; + $$.type_str = make_str("Interval"); $$.type_dimension = make_str("-1"); $$.type_index = make_str("-1"); $$.type_sizeof = NULL; @@ -4727,7 +4727,7 @@ common_type: simple_type mmerror(PARSE_ERROR, ET_ERROR, "Only numeric/decimal have precision/scale argument"); $$.type_enum = ECPGt_numeric; - $$.type_str = EMPTY; + $$.type_str = make_str("Numeric"); $$.type_dimension = make_str("-1"); $$.type_index = make_str("-1"); $$.type_sizeof = NULL; @@ -4771,7 +4771,7 @@ var_type: common_type else if (strcmp($1, "numeric") == 0) { $$.type_enum = ECPGt_numeric; - $$.type_str = EMPTY; + $$.type_str = make_str("Numeric"); $$.type_dimension = make_str("-1"); $$.type_index = make_str("-1"); $$.type_sizeof = NULL; @@ -4779,7 +4779,7 @@ var_type: common_type else if (strcmp($1, "decimal") == 0) { $$.type_enum = ECPGt_numeric; - $$.type_str = EMPTY; + $$.type_str = make_str("Numeric"); $$.type_dimension = make_str("-1"); $$.type_index = make_str("-1"); $$.type_sizeof = NULL; @@ -4803,7 +4803,7 @@ var_type: common_type else if (strcmp($1, "interval") == 0) { $$.type_enum = ECPGt_interval; - $$.type_str = EMPTY; + $$.type_str = make_str("Interval"); $$.type_dimension = make_str("-1"); $$.type_index = make_str("-1"); $$.type_sizeof = NULL; @@ -5048,7 +5048,7 @@ variable: opt_pointer ECPGColLabelCommon opt_array_bounds opt_initializer $$ = cat_str(4, $1, mm_strdup($2), $3.str, $4); break; - case ECPGt_numeric: + /*case ECPGt_numeric: if (atoi(dimension) < 0) type = ECPGmake_simple_type(actual_type[struct_level].type_enum, length); else @@ -5070,7 +5070,7 @@ variable: opt_pointer ECPGColLabelCommon opt_array_bounds opt_initializer $$ = cat_str(4, mm_strdup(actual_storage[struct_level]), make_str("Interval"), mm_strdup($2), $4); else $$ = cat_str(5, mm_strdup(actual_storage[struct_level]), make_str("Interval"), mm_strdup($2), mm_strdup(dim), $4); - break; + break;*/ default: if (atoi(dimension) < 0)