]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Remove outside-the-scanner references to "yyleng".
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 8 Sep 2009 04:26:04 +0000 (04:26 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 8 Sep 2009 04:26:04 +0000 (04:26 +0000)
It seems the flex developers have decided to change yyleng from int to size_t.
This has already happened in the latest release of OS X, and will start
happening elsewhere once the next release of flex appears.  Rather than trying
to divine how it's declared in any particular build, let's just remove the one
existing not-very-necessary external usage.

Back-patch to all supported branches; not so much because users in the field
are likely to care about building old branches with cutting-edge flex, as
to keep OSX-based buildfarm members from having problems with old branches.

src/interfaces/ecpg/preproc/extern.h
src/interfaces/ecpg/preproc/preproc.y

index 06cc74f204073d9c661c9e56346a7d6e2af8bb3e..357967dadd4181b558b4415f5d253bfd33012921 100644 (file)
@@ -30,8 +30,7 @@ extern char *yytext,
 #ifdef YYDEBUG
 extern int     yydebug;
 #endif
-extern int     yylineno,
-                       yyleng;
+extern int     yylineno;
 extern FILE *yyin,
                   *yyout;
 
index a975f03a6752bb79eb91ca376eb6756e224e96f9..73adf3bf0aeaea323cb9dea3c3c0ad8d0fee9475 100644 (file)
@@ -1,4 +1,4 @@
-/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.303.4.9 2008/10/10 12:19:18 meskes Exp $ */
+/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.303.4.10 2009/09/08 04:26:04 tgl Exp $ */
 
 /* Copyright comment */
 %{
@@ -162,11 +162,7 @@ make3_str(char *str1, char *str2, char *str3)
 static char *
 make_name(void)
 {
-       char * name = (char *)mm_alloc(yyleng + 1);
-
-       strncpy(name, yytext, yyleng);
-       name[yyleng] = '\0';
-       return(name);
+       return mm_strdup(yytext);
 }
 
 static char *