Add hacky destructor to UConverter to prevent infinite recursion
IntlUConverter is the native data for UConverter, and ~IntlUConverter
runs user callbacks that ultimately access the UConverter ObjectData,
which will rerun ~ObjectData and we go into a cycle. Run the callbacks
in UConverter::__destruct instead.
Breaks compat with PHP5, as UConverter is not supposed to have a
destructor defined. Not intended to be permanent.
The real fix is to have a better story with how native data objects are
destroyed. Mandating that they always get destroyed after their
associated ObjectData isn't going to work if we want to fully match PHP5.
Reviewed By: @ptarjan
Differential Revision:
D1273255