Re: new json, push generated file?
| From: | Anatol Belski | Date: | Sun, 22 Feb 2015 18:09:50 +0000 |
| Subject: | Re: new json, push generated file? | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-83476@lists.php.net to get a copy of this message | ||
Hi Jakub,
On Tue, February 17, 2015 17:53, Anatol Belski wrote:
> Hi Jakub,
>
>
> On Sun, February 15, 2015 21:18, Jakub Zelenka wrote:
>
>> On Wed, Feb 11, 2015 at 11:56 AM, Jakub Zelenka <bukka@php.net> wrote:
>>
>>
>>>
>>>
>>> I would like to push the the bison tab files shortly as the majority
>>> of people in this thread (including me) are for having them in the
>>> repo. The
>>> only thing that I would like is to have a specific version in the repo
>>> to prevent big diffs for small changes in the source files. For now
>>> I
>>> would like to have there re2c 0.13.6 (thanks for regenerating it back
>>> ;)
>>> ) and
>>> bison 2.7.1 gen files. I will update Readme at some point as well and
>>> add there that info.
>>>
>>>
>> Hey just a quick update. I bumped the version in the repo for re2c
>> 0.13.7.5
>> (latest - no changes in generated states ) and bison to 3.0.4 . I
>> updated Readme as well.
>>
>>
>>
>> I have pushed the bison files in
>>
>> http://git.php.net/?p=php-src.git;a=commit;h=911f7b10b1f4c9529bc01580d29
>> 8a
>> 93a5cd6bbd2
>> . There is an explanation why the C preprocessor guard macro names are
>> file system dependent. It means why there is
>> YY_PHP_JSON_YY_HOME_JAKUB_PROG_PHP_MASTER_EXT_JSON_JSON_PARSER_TAB_H_IN
>> CL
>> UDED
>> .
>> It's due to bison algorithm for creating such name. As I noted the only
>> solution that works for me is using different yacc.c skeleton. I have
>> done it in jsond in
>> https://github.com/bukka/php-jsond/commit/583619d7962fa57bf97dcdac4147d ÷¾
>> }×4ž“llJDÐ
>> 8b
>> 599a42672
>> where I have optional bison generation which means that I can stick with
>> one bison version and use custom skeleton file. This is however not
>> possible in the core where we allow range of bison versions which
>> doesn't play well with skeletons that are version specific.
>>
>>
> thanks for pushing. I'm using re2c 0.13.7.5 now for master as well. With
> bison, it'll be however hard to move from 2.4.1 on Windows (and it's not
> that critical), but file generated with it seems to work. Anyway, nothing
> prevents you or anyone to regenerate it and push over, just in case.
> Most
> important is that fixes land in the *.re/*.y sources. And one knows who to
> ping for verifications :)
>
FYI I had to downgrade re2c to 0.13.6 as the latest randomly crashes.
Regards
Anatol