> From: Sascha Schumann [mailto:[EMAIL PROTECTED]] > > > iirc the reason why i changed it to unsigned was that > actually the zend engine > > treated it as unsigned everywhere but in that particular > struct. i also > > remember that i discussed that with andi and that he agreed > to change this in > > the ze2 cvs module and that the extensions should be *fixed*. > > Well, fixing the engine is a small, finite task whereas > auditing all existing extension on this planet is an > open-ended one. I think it is easy to see that.
you're propably a bit too optimistic, i can hardly imagine that all existing extensions all over the world compile out of the box against ZE2. i guess only a handful do this. > You need to realize that once a certain API has been > established, you cannot go around and change it at will. > Especially if the breakage is as subtle as in this case. If > the compiler dies, because a function takes a new number of > arguments, it is something which becomes visible immediately. > Signedness issues are usually hidden until someone exploits > them. the only thing that should be realized is that compiler warnings are still a bad thing(tm). i don't see any difference in this compared to changing the number of arguments of a function. > > > i agree that it > > doesn't make any sense to mix types. changing it to uint > means to fix all the > > extensions, changing it to int means to fix the engine (and > not just to revert > > my patch). > > In which areas of the engine did you notice defects? If we > had a list, we could start from there. hmm, that patch is quite old, i can't remember very well. iirc almost everywhere, but i have to look at my commit again. harald. -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php