On 03/22/2013 02:02 AM, Remi Collet wrote:
> While build of 5.5 snapshot works perfectly, beta1 ZTS build is broken
> 
> In file included from
> /dev/shm/BUILD/php-5.5.0beta1/ext/tokenizer/tokenizer.c:33:0:
> /dev/shm/BUILD/php-5.5.0beta1/build-ztscli/Zend/zend_language_parser.h:331:5:
> error: conflicting types for 'zendparse'
> In file included from
> /dev/shm/BUILD/php-5.5.0beta1/Zend/zend_globals.h:28:0,
>                  from /dev/shm/BUILD/php-5.5.0beta1/Zend/zend_compile.h:418,
>                  from /dev/shm/BUILD/php-5.5.0beta1/Zend/zend_modules.h:26,
>                  from /dev/shm/BUILD/php-5.5.0beta1/Zend/zend_API.h:26,
>                  from /dev/shm/BUILD/php-5.5.0beta1/main/php.h:38,
>                  from
> /dev/shm/BUILD/php-5.5.0beta1/ext/tokenizer/tokenizer.c:25:
> /dev/shm/BUILD/php-5.5.0beta1/Zend/zend_globals_macros.h:35:5: note:
> previous declaration of 'zendparse' was here
> 
> Comparing the 201303201430 snapshot (very closed to beta1) and beta1 archive
> 
> 201303201430, in bison generated files:
>     /* A Bison parser, made by GNU Bison 2.4.1.  */
> beta1:
>     /* A Bison parser, made by GNU Bison 2.6.1.  */
> 
> So, it seems snapshot script don't use the same environment than the one
> used to generate release.
> 
> Any idea how to fix this ?

I took a quick look at this. The Bison change causing this from their
NEWS file is:

  *** Features deprecated since Bison 1.875
    YYPARSE_PARAM and YYLEX_PARAM, deprecated in favor of
    %parse-param and %lex-param, will no longer be supported.

I was hoping the fix would be as simple as doing:

-#define YYPARSE_PARAM tsrm_ls
-#define YYLEX_PARAM tsrm_ls
+%parse-param { tsrm_ls }
+%lex-param { tsrm_ls }

but that doesn't quite do the trick. Need to read up more on how
%parse-param and %lex-param work. If someone wants to do a little light
reading and report back it would be appreciated.

-Rasmus

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to