Re: Change in internal call_user_function() API.

From: Date: Mon, 29 Feb 2016 07:32:40 +0000
Subject: Re: Change in internal call_user_function() API.
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-91455@lists.php.net to get a copy of this message
On 02/28/2016 05:01 AM, Xinchen Hui wrote:
Hey: On Thu, Feb 25, 2016 at 11:16 PM, Dmitry Stogov <dmitry@zend.com <mailto:dmitry@zend.com>> wrote:
    Hi,
    PHP-7.0 internal call_user_function() API doesn't support function
    calls with preinitialised symbol tables.
    This just can't work in general , because values of arguments
    might be already initialized in CV as well as in symbol table.
    I propose to remove the corresponding internal API in master:
    1) remove last argument of call_user_function_ex()
    2) remove zend_call_info.symbol_table field
I think it's okey, (I assume this is for 7.1, right?)
Of course. Even for for 7.1 Nikita suggested to keep source level compatibility for call_user_function_ex(), and I agree with him. I'll wait for Bob's response (phpdbg is, probably, the only one user if this broken feature), and then commit. Thanks. Dmitry,
the value caller want to pass in should goes via arguments, which is a more reasonable way. thanks
    https://gist.github.com/dstogov/5550827aa695ff8cb803
    The tricky way was used in phpdbg only, but that code doesn't
    work, and should be fixed anyway.
    Thanks. Dmitry.
-- Xinchen Hui @Laruence http://www.laruence.com/


« previous php.internals (#91455) next »