From: Heikki Linnakangas Date: Fri, 11 Mar 2011 13:44:40 +0000 (+0200) Subject: In ecpg preprocessor, don't try to look up constants in the test for X-Git-Tag: REL9_0_4~30 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=2f418e8a174136507fb1f80214415b144e24850c;p=pg-rex%2Fsyncrep.git In ecpg preprocessor, don't try to look up constants in the test for variable hiding. A constant is not a variable. It worked in most cases by accident, because we add constants to the global list of variables (why?), but float constants like 1.23 were interpreted as struct field references, and not found. Backpatch to 9.0, where the test for variable hiding was added. --- diff --git a/src/interfaces/ecpg/preproc/type.c b/src/interfaces/ecpg/preproc/type.c index eb7d4aeb9b..1b8a2a698f 100644 --- a/src/interfaces/ecpg/preproc/type.c +++ b/src/interfaces/ecpg/preproc/type.c @@ -245,7 +245,7 @@ ECPGdump_a_type(FILE *o, const char *name, struct ECPGtype * type, const int bra struct variable *var; if (type->type != ECPGt_descriptor && type->type != ECPGt_sqlda && - type->type != ECPGt_char_variable && + type->type != ECPGt_char_variable && type->type != ECPGt_const && brace_level >= 0) { char *str;