Hi Dan, The updated patch is at https://github.com/php/php-src/pull/1205
The main difference is in ext/intl. If you don't see any problems I can commit it. I didn't think about the classes you missed. Thanks. Dmitry. On Fri, Mar 27, 2015 at 7:32 PM, Dan Ackroyd <dan...@basereality.com> wrote: > On 26 March 2015 at 20:19, Dmitry Stogov <dmi...@zend.com> wrote: > Hi Dmitry, > > > however the patch looks a bit surprising to me. > > We have special function to do this - zend_ctor_make_null() and some > tricks in the VM. > > I made just a quick look over your patch but didn't find any references > to them. > > Surprising is usually not good, so let me see if I can explain. > > I touched the minimal amount of code needed to achieve the desired > behaviour. For the intl classes, the exception is being thrown by > telling the intl error handling code to use an exception, no matter > what the intl.use_exceptions setting is, if the error was emitted > during a constructor: > > https://github.com/Danack/php-src/blob/InternalClassClean/ext/intl/intl_error.c#L114 > > I didn't touch any of the code zend_ctor_make_null. I guess if it's > only used in these special cases, and they are going away it could > also be removed? But it sounds like that would be a job for someone > who understands that bit. > > > Please don't commit it yet. > > That won't be difficult, I don't have commit rights, and don't > particularly want them. > > > Nikita, could you also take a quick look. > > Nikita pointed out that I may have missed a couple of classes. I'll > try to get those updated before you have a look. > > cheers > Dan >