summaryrefslogtreecommitdiff
path: root/src/interfaces/ecpg/preproc/descriptor.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2016-12-11 18:04:28 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2016-12-11 18:04:28 -0500
commit2bdee07abefee3e59db9f89da635d7ecf9716a7b (patch)
tree4720a7b7d768f9b34ec3d501a402e0a396197c5a /src/interfaces/ecpg/preproc/descriptor.c
parent73ae395d84198ff14792522c79471975936ee76a (diff)
Use "%option prefix" to set API names in ecpg's lexer.
Back-patch commit 92fb64983 into the pre-9.6 branches. Without this, ecpg fails to build with the latest version of flex. It's not unreasonable that people would want to compile our old branches with recent tools. Per report from Дилян Палаузов. Discussion: https://postgr.es/m/d845c1af-e18d-6651-178f-9f08cdf37e10@aegee.org
Diffstat (limited to 'src/interfaces/ecpg/preproc/descriptor.c')
-rw-r--r--src/interfaces/ecpg/preproc/descriptor.c31
1 files changed, 17 insertions, 14 deletions
diff --git a/src/interfaces/ecpg/preproc/descriptor.c b/src/interfaces/ecpg/preproc/descriptor.c
index 22ee6bf2049..2f3799fdf0c 100644
--- a/src/interfaces/ecpg/preproc/descriptor.c
+++ b/src/interfaces/ecpg/preproc/descriptor.c
@@ -58,7 +58,7 @@ ECPGnumeric_lvalue(char *name)
case ECPGt_unsigned_long:
case ECPGt_unsigned_long_long:
case ECPGt_const:
- fputs(name, yyout);
+ fputs(name, base_yyout);
break;
default:
mmerror(PARSE_ERROR, ET_ERROR, "variable \"%s\" must have a numeric type", name);
@@ -152,7 +152,7 @@ output_get_descr_header(char *desc_name)
{
struct assignment *results;
- fprintf(yyout, "{ ECPGget_desc_header(__LINE__, %s, &(", desc_name);
+ fprintf(base_yyout, "{ ECPGget_desc_header(__LINE__, %s, &(", desc_name);
for (results = assignments; results != NULL; results = results->next)
{
if (results->value == ECPGd_count)
@@ -162,7 +162,7 @@ output_get_descr_header(char *desc_name)
}
drop_assignments();
- fprintf(yyout, "));\n");
+ fprintf(base_yyout, "));\n");
whenever_action(3);
}
@@ -171,7 +171,7 @@ output_get_descr(char *desc_name, char *index)
{
struct assignment *results;
- fprintf(yyout, "{ ECPGget_desc(__LINE__, %s, %s,", desc_name, index);
+ fprintf(base_yyout, "{ ECPGget_desc(__LINE__, %s, %s,", desc_name, index);
for (results = assignments; results != NULL; results = results->next)
{
const struct variable *v = find_variable(results->variable);
@@ -188,12 +188,13 @@ output_get_descr(char *desc_name, char *index)
default:
break;
}
- fprintf(yyout, "%s,", get_dtype(results->value));
- ECPGdump_a_type(yyout, v->name, v->type, v->brace_level, NULL, NULL, -1, NULL, NULL, str_zero, NULL, NULL);
+ fprintf(base_yyout, "%s,", get_dtype(results->value));
+ ECPGdump_a_type(base_yyout, v->name, v->type, v->brace_level,
+ NULL, NULL, -1, NULL, NULL, str_zero, NULL, NULL);
free(str_zero);
}
drop_assignments();
- fputs("ECPGd_EODT);\n", yyout);
+ fputs("ECPGd_EODT);\n", base_yyout);
whenever_action(2 | 1);
}
@@ -203,7 +204,7 @@ output_set_descr_header(char *desc_name)
{
struct assignment *results;
- fprintf(yyout, "{ ECPGset_desc_header(__LINE__, %s, (int)(", desc_name);
+ fprintf(base_yyout, "{ ECPGset_desc_header(__LINE__, %s, (int)(", desc_name);
for (results = assignments; results != NULL; results = results->next)
{
if (results->value == ECPGd_count)
@@ -213,7 +214,7 @@ output_set_descr_header(char *desc_name)
}
drop_assignments();
- fprintf(yyout, "));\n");
+ fprintf(base_yyout, "));\n");
whenever_action(3);
}
@@ -264,7 +265,7 @@ output_set_descr(char *desc_name, char *index)
{
struct assignment *results;
- fprintf(yyout, "{ ECPGset_desc(__LINE__, %s, %s,", desc_name, index);
+ fprintf(base_yyout, "{ ECPGset_desc(__LINE__, %s, %s,", desc_name, index);
for (results = assignments; results != NULL; results = results->next)
{
const struct variable *v = find_variable(results->variable);
@@ -295,9 +296,11 @@ output_set_descr(char *desc_name, char *index)
case ECPGd_length:
case ECPGd_type:
{
- char *str_zero = mm_strdup("0");
- fprintf(yyout, "%s,", get_dtype(results->value));
- ECPGdump_a_type(yyout, v->name, v->type, v->brace_level, NULL, NULL, -1, NULL, NULL, str_zero, NULL, NULL);
+ char *str_zero = mm_strdup("0");
+
+ fprintf(base_yyout, "%s,", get_dtype(results->value));
+ ECPGdump_a_type(base_yyout, v->name, v->type, v->brace_level,
+ NULL, NULL, -1, NULL, NULL, str_zero, NULL, NULL);
free(str_zero);
}
break;
@@ -307,7 +310,7 @@ output_set_descr(char *desc_name, char *index)
}
}
drop_assignments();
- fputs("ECPGd_EODT);\n", yyout);
+ fputs("ECPGd_EODT);\n", base_yyout);
whenever_action(2 | 1);
}