ssuominen    14/05/27 12:36:00

  Added:                xxdiff-4.0_beta1_p20110426-bison3.patch
  Log:
  Restrict -r0 to <sys-devel/bison-3 and fix building in -r1 wrt #511560 by 
"zimous"
  
  (Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key 
4868F14D)

Revision  Changes    Path
1.1                  
dev-util/xxdiff/files/xxdiff-4.0_beta1_p20110426-bison3.patch

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/xxdiff/files/xxdiff-4.0_beta1_p20110426-bison3.patch?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/dev-util/xxdiff/files/xxdiff-4.0_beta1_p20110426-bison3.patch?rev=1.1&content-type=text/plain

Index: xxdiff-4.0_beta1_p20110426-bison3.patch
===================================================================
http://bugs.gentoo.org/511560

Description: Fix compilation with Bison 3
YYPARSE_PARAM was deprecated in Bison 1.875 and removed in Bison 3;
%parse-param can be used instead. Also fix a warning about %pure_parser
Author: Florian Schlichting <[email protected]>

--- a/src/resParser.y
+++ b/src/resParser.y
@@ -39,12 +39,11 @@
 
 // The parser input is the resources object to fill in.
 #define RESOURCES  ( static_cast<XxResources*>(resources) )
-#define YYPARSE_PARAM resources
 
 // Declare lexer from other compilation unit.
 int resParserlex( YYSTYPE* yylval );
 
-void resParsererror( const char* msg );
+void resParsererror( void *resources, const char* msg );
 
 // Declare some parser functions and data defined in resParser.cpp
 namespace XxResParserNS {
@@ -58,6 +57,9 @@
 
 %}
 
+/* The parser input is the resources object to fill in. */
+%parse-param { void *resources }
+
 /* generate header file */
 %defines
 
@@ -144,7 +146,7 @@
 %type <num> boolkwd
 
 %start xxdiffrc
-%pure_parser
+%pure-parser
 
 %%
 xxdiffrc       : stmts
@@ -188,7 +190,7 @@
                       RESOURCES->setPreferredGeometry( geometry );
                    }
                    else {
-                      yyerror( "Bad geometry specification." );
+                      yyerror( resources, "Bad geometry specification." );
                       // Should never happen, the lexer regexp should be tough
                       // enough.
                    }
@@ -212,7 +214,7 @@
                       QString err = QString( "Requested style key does not 
exist." );
                       err += QString( "\nValid styles are: " );
                       err += styles.join( ", " );
-                      yyerror( err.toLatin1().constData() );
+                      yyerror( resources, err.toLatin1().constData() );
                    }
                 }
                 ;
@@ -224,7 +226,7 @@
                       char buf[2048];
                       ::snprintf( buf, 2048,
                                   "Unrecognized accelerator: %s\n", $5 );
-                      yyerror( buf );
+                      yyerror( resources, buf );
                    }
                 }
                ;
--- a/src/resParser.l
+++ b/src/resParser.l
@@ -298,7 +298,7 @@
                      QString os;
                      QTextOStream oss( &os );
                      oss << "ignoring char: " << yytext << flush;
-                     yyerror( os.latin1() );
+                     yyerror( resources, os.latin1() );
                      */
                   }
                 }
--- a/src/resParser.cpp
+++ b/src/resParser.cpp
@@ -73,7 +73,7 @@
 
 
//------------------------------------------------------------------------------
 //
-void resParsererror( const char* msg )
+void resParsererror( void* resources __attribute__((__unused__)), const char* 
msg )
 {
    // Send errors to stdout so we can filter out the debug info shmeglu while
    // debugging parser.
@@ -794,7 +794,7 @@
       QString os;
       QTextStream oss( &os );
       oss << "Unknown " << errmsg << ": " << name << flush;
-      resParsererror( os.toLatin1().constData() );
+      resParsererror( NULL, os.toLatin1().constData() );
    }
    num = ERROR_TOKEN;
    return ERROR_TOKEN;




Reply via email to