]> git.saurik.com Git - bison.git/commitdiff
Fix a bad interaction with flex 2.5.23 reported by Bruce Lilly in
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 13 Dec 2002 09:33:23 +0000 (09:33 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 13 Dec 2002 09:33:23 +0000 (09:33 +0000)
<http://mail.gnu.org/pipermail/bug-bison/2002-November/001929.html>.

(YYLTYPE, struct yyltype): Do not define unless
locations are requested.
(union yyalloc): Do not depend on YYLTYPE_IS_TRIVIAL unless
locations are requested.

data/yacc.c

index 4cf0b05f0ca9cfa34f69cc96036244bc9845c21f..d0bf6857591ba1ca248bf34fb96168dab0e62598 100644 (file)
@@ -197,7 +197,7 @@ b4_syncline([@oline@], [@ofile@])],
 # define YYSTYPE_IS_TRIVIAL 1
 #endif
 
-#ifndef YYLTYPE
+]b4_location_if([#ifndef YYLTYPE
 typedef struct yyltype
 {
   int first_line;
@@ -208,6 +208,7 @@ typedef struct yyltype
 # define YYLTYPE ]b4_location_type[
 # define YYLTYPE_IS_TRIVIAL 1
 #endif
+])[
 
 /* Copy the second part of user declarations.  */
 ]b4_post_prologue
@@ -249,7 +250,7 @@ b4_syncline([@oline@], [@ofile@])[
 
 #if (! defined (yyoverflow) \
      && (! defined (__cplusplus) \
-        || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
+        || (]b4_location_if([YYLTYPE_IS_TRIVIAL && ])[YYSTYPE_IS_TRIVIAL)))
 
 /* A type that is properly aligned for any stack member.  */
 union yyalloc