Re: [PHP4BETA] cvs: /php4/ext/standard parsedate.y
| From: | rubys at us dot ibm dot com | Date: | Mon, 06 Dec 1999 16:13:42 +0000 |
| Subject: | Re: [PHP4BETA] cvs: /php4/ext/standard parsedate.y | ||
| Groups: | php.version4 | ||
| Request: | Send a blank email to php-version4+get-7535@lists.php.net to get a copy of this message | ||
Sascha wrote:
>> >Why is parsedate.y including php.h in the first place? I believe
>> >that's where all of the problems originate from.
>>
>> php.h is included by php_reentrancy.h, in order to define PHPAPI.
>
> From parsedate.y:
>
> #if WIN32||WINNT
> # include <time.h>
> # include "php.h"
> # undef YYSTYPE
> # include "php_reentrancy.h"
Sascha, I added the explicit #include for php.h and undef for YYSTYPE to
undo the damage caused by your including php.h in php_reentrancy.h in
response to a request by Shane Caraveo. As I said previously, I believe
the root cause for the problem is an inappropriate #define in libzend.
Zeev wrote:
> Modified files:
> /php4/ext/standard parsedate.y
> Log:
> This is no longer needed. Note that we'll always need to undefine
YYSTYPE, since
> the template bison generated .h file defines it if it's not already
defined.
I'm troubled by the removal of the code that you indicate is "no longer
needed". It was introduced yesterday by Rasmus.
I'm also troubled by the comment on the need to undefine YYSTYPE. If the
#define for YYSTYPE were moved from zend_compile.h to zend-parser.y, and
the other similar #define in zend-parser.h were simply removed , there is
no need for parsedate.y to undefine YYSTYPE.
I'll gladly fix all four files if everybody promises to
_stop_undoing_my_changes_ <grin>