re2c version(s)
| From: | Dmitry Stogov | Date: | Fri, 13 Jul 2018 09:13:42 +0000 |
| Subject: | re2c version(s) | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-102796@lists.php.net to get a copy of this message | ||
Hi,
I think, many core developers saw unexpected changes in "zend_labguages_scanner.c" or
"var_unserializer.c" after rebuilds.
This occurs, because we use different versions of re2c, and some of them produce really different
code.
They also embed version number into the generate source. Currently different files in PHP source
tree generated by different re2c versions:
ext/json/json_scanner.c 0.16
ext/date/lib/parse_date.c 0.15.3
ext/date/lib/parse_iso_intervals.c 0.15.3
ext/pdo/pdo_sql_parser.c 0.16
ext/phar/phar_path_check.c 1.0.3
sapi/phpdbg/phpdbg_lexer.c 0.16
ext/standard/url_scanner_ex.c 0.16
ext/standard/var_unserializer.c 1.0.1
Zend/zend_ini_scanner.c 0.15
Zend/zend_language_scanner.c 1.0.1
I propose, to change build scripts (in master and PHP-7.3) to require at least re2c version 1.0.0
(it seems 1.0.0-1.0.3 produce the same result) and suppress version output into the generated files.
I'm not sure about timelib files.
Thanks. Dmitry.