lilypond-devel
[Top][All Lists]
Advanced

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

Re: Solving flex-errors: Lilypond 1.7.2 compiled with gcc-3.2!


From: W. L. Estes
Subject: Re: Solving flex-errors: Lilypond 1.7.2 compiled with gcc-3.2!
Date: Tue, 8 Oct 2002 08:30:21 -0400
User-agent: Mutt/1.3.28i

The below is a known problem and has been addressed in the flex
development code. We're working on a new official release which we
hope will be out soon. Beta releases and cvs snapshots can be found
at:

ftp://ftp.uncg.edu/people/wlestes/

On Tuesday, 08 October 2002,00:10 +0300, Heikki Johannes Junes wrote:

> Proceed compiling LilyPond 1.7.2 with the usual procedure. Once "make all"
> fails to compile "lily/out/lexer.cc" you have to edit that file.
> 
> The error here is that "lily/out/lexer.cc" produced from file
> "lily/lexer.ll" contains old syntax which is not recognized by gcc 3.2.
> The type of errors were found by J.Anders (see
> http://mail.gnu.org/pipermail/lilypond-user/2002-September/002555.html):
> 
> > lexer.ll:227: `cerr' undeclared (first use this function)
> > lexer.ll:227: (Each undeclared identifier is reported only once for each
> >     function it appears in.)
> 
> Here is the patch which helped me to fix the problem. It adds "std::"
> before "cerr". "FLEX_STD" has been defined for that purpose. The patch
> below applies to five lines only. There was one line in "lexer.cc", where
> the syntax was correct already and from which the idea was developed.
> 
> --- lexer.old.cc      2002-10-07 23:32:33.000000000 +0300
> +++ lexer.cc  2002-10-07 23:31:56.000000000 +0300
> @@ -2965,16 +2965,16 @@
>               if ( yy_flex_debug )
>                       {
>                       if ( yy_act == 0 )
> -                             cerr << "--scanner backing up\n";
> +                             FLEX_STD cerr << "--scanner backing up\n";
>                       else if ( yy_act < 67 )
> -                             cerr << "--accepting rule at line " << 
> yy_rule_linenum[yy_act] <<
> +                             FLEX_STD cerr << "--accepting rule at line " << 
> yy_rule_linenum[yy_act] <<
>                                        "(\"" << yytext << "\")\n";
>                       else if ( yy_act == 67 )
> -                             cerr << "--accepting default rule (\"" << 
> yytext << "\")\n";
> +                             FLEX_STD cerr << "--accepting default rule (\"" 
> << yytext << "\")\n";
>                       else if ( yy_act == 68 )
> -                             cerr << "--(end of buffer or a NUL)\n";
> +                             FLEX_STD cerr << "--(end of buffer or a NUL)\n";
>                       else
> -                             cerr << "--EOF (start condition " << YY_START 
> << ")\n";
> +                             FLEX_STD cerr << "--EOF (start condition " << 
> YY_START << ")\n";
>                       }
> 
>               switch ( yy_act )
> ----
> 
> The following did not cause any difference to error messages:
> -  updating flex-2.5.4 to flex-2.5.21
> -  updating autoconf-2.53 to autoconf-2.54 (needed by flex-cvs-snapshot,
>    the compiling of which failed).
> 
> So, I will use now gcc-3.2. I hope that this helps also somebody else.
> Enjoy!
> 
>       Heikki Junes

-- 
Will Estes
Unix Systems Programmer
UNCG MIS, Systems Group




reply via email to

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