help-flex
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Problems using flex 2.5.11 with gcc 3.01


From: Joerg . Brunner
Subject: Problems using flex 2.5.11 with gcc 3.01
Date: Wed, 14 Aug 2002 11:46:24 +0200

Hello once again,

i tried out to use the current flex version 2.5.11 in order to eliminate the
previous compiler problems caused by some incompatibilities of the flex
2.5.4 output and the current C++ standard.

Now using the 2.5.11 version I run into the following problem:

I created my scanner.cpp by calling "flex.exe -+ --nounistd -o scanner.cpp
expressions.def".
If I then try to compile the resulting file I receive the following error
messages:

> In file included from definitions.def:2:
> LSto_Scanner.2511: In function `int yylex_destroy()':
> LSto_Scanner.2511:1913: `yy_current_buffer' undeclared (first use this
function)
> LSto_Scanner.2511:1913: (Each undeclared identifier is reported only once
for each function it appears in.)
> LSto_Scanner.2511:1913: `yy_delete_buffer' undeclared (first use this
function)

As I found out "yy_current_buffer" and "yy_delete_buffer" are defined in
FlexLexer.h but they are defined inside the class yyFlexLexer. The place of
usage in line 1913 however looks like this

1910 > int yylex_destroy  YYFARGS0(void)
1911 > {
1912 >     /* Destroy the current (main) buffer. */
1913 >     yy_delete_buffer( YY_G(yy_current_buffer) YY_CALL_LAST_ARG );
1914 >     YY_G(yy_current_buffer) = NUL

So the usage is outside all classes and yy_current_buffer and
yy_delete_buffer can not be found.
Can anybody tell me what's the problem here?

Jörg



                Jörg Brunner
                Research & Development

                SAF Germany GmbH         
                Lohnerhofstr. 2  
                D-78467 Konstanz






reply via email to

[Prev in Thread] Current Thread [Next in Thread]