OSDN Git Service

Hmm, it seems some versions of flex declare yytext as extern char[]
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 21 Mar 1999 01:07:07 +0000 (01:07 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 21 Mar 1999 01:07:07 +0000 (01:07 +0000)
but others declare it as extern char *.  gcc complains (quite rightly too).
Worked around it by rearranging the order of inclusions so that we don't
have to explicitly declare yytext; this should work with either variant.

src/pl/plpgsql/src/gram.y

index a9488ed..787a008 100644 (file)
@@ -4,7 +4,7 @@
  *                       procedural language
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/pl/plpgsql/src/gram.y,v 1.2 1999/01/28 11:48:30 wieck Exp $
+ *    $Header: /cvsroot/pgsql/src/pl/plpgsql/src/gram.y,v 1.3 1999/03/21 01:07:07 tgl Exp $
  *
  *    This software is copyrighted by Jan Wieck - Hamburg.
  *
@@ -40,8 +40,9 @@
 #include "string.h"
 #include "plpgsql.h"
 
-extern int     yylineno;
-extern char    yytext[];
+extern int     yylineno;                       /* not always declared by lexer... */
+
+#include "pl_scan.c"
 
 static PLpgSQL_expr    *read_sqlstmt(int until, char *s, char *sqlstart);
 static PLpgSQL_stmt    *make_select_stmt(void);
@@ -1454,7 +1455,3 @@ make_tupret_expr(PLpgSQL_row *row)
     plpgsql_dstring_free(&ds);
     return expr;
 }
-
-
-
-#include "pl_scan.c"