aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/ecpg/preproc/extern.h4
-rw-r--r--src/interfaces/ecpg/preproc/pgc.l45
2 files changed, 2 insertions, 47 deletions
diff --git a/src/interfaces/ecpg/preproc/extern.h b/src/interfaces/ecpg/preproc/extern.h
index d0c4e470166..aef65657da2 100644
--- a/src/interfaces/ecpg/preproc/extern.h
+++ b/src/interfaces/ecpg/preproc/extern.h
@@ -76,7 +76,7 @@ extern char *hashline_number(void);
extern int base_yyparse(void);
extern int base_yylex(void);
extern void base_yyerror(const char *);
-extern void *mm_alloc(size_t), *mm_realloc(void *, size_t);
+extern void *mm_alloc(size_t);
extern char *mm_strdup(const char *);
extern void mmerror(int errorcode, enum errortype type, const char *error,...) pg_attribute_printf(3, 4);
extern void mmfatal(int errorcode, const char *error,...) pg_attribute_printf(2, 3) pg_attribute_noreturn();
@@ -105,9 +105,7 @@ extern void remove_variables(int);
extern struct variable *new_variable(const char *, struct ECPGtype *, int);
extern const ScanKeyword *ScanCKeywordLookup(const char *);
extern const ScanKeyword *ScanECPGKeywordLookup(const char *text);
-extern void scanner_init(const char *);
extern void parser_init(void);
-extern void scanner_finish(void);
extern int filtered_base_yylex(void);
/* return codes */
diff --git a/src/interfaces/ecpg/preproc/pgc.l b/src/interfaces/ecpg/preproc/pgc.l
index 91ee44f091e..5ccda8da6b1 100644
--- a/src/interfaces/ecpg/preproc/pgc.l
+++ b/src/interfaces/ecpg/preproc/pgc.l
@@ -34,8 +34,6 @@ extern YYSTYPE base_yylval;
static int xcdepth = 0; /* depth of nesting in slash-star comments */
static char *dolqstart = NULL; /* current $foo$ quote start string */
-static YY_BUFFER_STATE scanbufhandle;
-static char *scanbuf;
/*
* literalbuf is used to accumulate literal values when multiple rules
@@ -1436,7 +1434,7 @@ lex_init(void)
if (literalbuf == NULL)
{
literalalloc = 1024;
- literalbuf = (char *) malloc(literalalloc);
+ literalbuf = (char *) mm_alloc(literalalloc);
}
startlit();
@@ -1664,44 +1662,3 @@ static bool isinformixdefine(void)
return false;
}
-
-/*
- * Called before any actual parsing is done
- */
-void
-scanner_init(const char *str)
-{
- Size slen = strlen(str);
-
- /*
- * Might be left over after ereport()
- */
- if (YY_CURRENT_BUFFER)
- yy_delete_buffer(YY_CURRENT_BUFFER);
-
- /*
- * Make a scan buffer with special termination needed by flex.
- */
- scanbuf = mm_alloc(slen + 2);
- memcpy(scanbuf, str, slen);
- scanbuf[slen] = scanbuf[slen + 1] = YY_END_OF_BUFFER_CHAR;
- scanbufhandle = yy_scan_buffer(scanbuf, slen + 2);
-
- /* initialize literal buffer to a reasonable but expansible size */
- literalalloc = 128;
- literalbuf = (char *) mm_alloc(literalalloc);
- startlit();
-
- BEGIN(INITIAL);
-}
-
-
-/*
- * Called after parsing is done to clean up after scanner_init()
- */
-void
-scanner_finish(void)
-{
- yy_delete_buffer(scanbufhandle);
- free(scanbuf);
-}