Moving this discussion to php-i18n list.

I guess a simple search and replace could do it except for the functions that do not use this macro and set the type directly instead, but there are few of them probably. I say we should apply the patch and then fix up the RETURN_STRING() macros and continue from there.

-Andrei

On Jan 10, 2006, at 9:43 PM, Dmitry Stogov wrote:

the simplest way to make "old" function comatible with unicode - substitute
RETURN_STRING() by RETURN_RT_STRING().

Thanks. Dmitry.

-----Original Message-----
From: Andrei Zmievski [mailto:[EMAIL PROTECTED]
Sent: Wednesday, January 11, 2006 12:55 AM
To: Dmitry Stogov
Cc: Zeev Suraski; Rasmus Lerdorf; Andi Gutmans
Subject: Re: Unicode patch


Hi Dmitry,

I will review it as soon as possible.

The behavior you described is exactly what we talked about at the
meeting and it is also what my message to php-i18n list was about
(which no one replied to). I see solutions to this:

1) Don't do anything. The breakage should be a sufficiently high
motivator for people to start upgrading the functions.
2) Implement a stop-gap measure, while functions are being upgraded.
Basically, make the engine auto-convert the return value of the
function to IS_UNICODE. We'd need a way to indicate that the return
value is a text value to avoid converting functions that are supposed
to return IS_BINARY.

-Andrei

On Jan 9, 2006, at 3:53 AM, Dmitry Stogov wrote:

Hi Andrei,

I made a patch that removes IS_BINARY data type, but I
don't think, it
will
give a lot of advantages in maintainability
Now IS_STRING behave as IS_BINARY in unicode mode.
So IS_STRING and IS_UNICODE are incompatible and all old functions
must be
upgraded.
For example the following code causes a fatal error in unicode mode.

echo "hello".sprintf("%s","world");

Note: I didn't remove old behavior from zend_hash.
In unicode mode string keys are converted to unicode ones automatic.
(This
should be removed on next step).

Please review the patch and make your notes about it.

Thanks. Dmitry.
<unicode-6.diff.gz>





--
PHP Unicode & I18N Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to