[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Bugs in Bison 2.0: YYSTYPE and yylval
From: |
Paul Eggert |
Subject: |
Re: Bugs in Bison 2.0: YYSTYPE and yylval |
Date: |
Fri, 22 Jul 2005 13:59:25 -0700 |
User-agent: |
Gnus/5.1007 (Gnus v5.10.7) Emacs/21.4 (gnu/linux) |
In <http://lists.gnu.org/archive/html/bug-bison/2005-06/msg00036.html>
evilfred <address@hidden> writes:
> I'm using Bison 2.0 with Flex 2.5.27 in MinGW in Windows....
> - in the generated c file, just after the part where it says
> "initialize stack pointers", there is a line that says "yyvsp[0] =
> yylval;". this kills my program as yylval is not initialized yet.
Thanks for reporting that. This has been fixed in Bison CVS here
<http://lists.gnu.org/archive/html/bug-bison/2005-07/msg00020.html>
and the fix should appear in the next Bison release.
> - I have stuff at the top of my grammar like so:
>
> %{
> #define YYSTYPE double
> ...
> %}
>
> %defines
>
> yet this is never copied into the generated header file.
That's the intended behavior. Here's a quote from the documentation
that may explain things.
Unless @code{YYSTYPE} is already defined as a macro, the output header
declares @code{YYSTYPE}. Therefore, if you are using a @code{%union}
(@pxref{Multiple Types, ,More Than One Value Type}) with components
that require other definitions, or if you have defined a
@code{YYSTYPE} macro (@pxref{Value Type, ,Data Types of Semantic
Values}), you need to arrange for these definitions to be propagated to
all modules, e.g., by putting them in a
prerequisite header that is included both by your parser and by any
other module that needs @code{YYSTYPE}.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: Bugs in Bison 2.0: YYSTYPE and yylval,
Paul Eggert <=