[PHP-CVS] com php-src: Merge branch 'PHP-5.3' into PHP-5.4: Zend/zend_compile.c
Commit:8b515fa00ad844af82158449ee3d5d1c72a93451 Author:Dmitry Stogov Wed, 29 May 2013 11:12:43 +0400 Parents: bcdac7526d2f48014e1e5f44d1449f8b841ff9e8 13e5c97ffd75821c01bbec79c1d2233c50d36b0e Branches: PHP-5.4 PHP-5.5 master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=8b515fa00ad844af82158449ee3d5d1c72a93451 Log: Merge branch 'PHP-5.3' into PHP-5.4 * PHP-5.3: Fixed incorrect argument number Conflicts: Zend/zend_compile.c Changed paths: MM Zend/zend_compile.c Diff: diff --cc Zend/zend_compile.c index 82275ce,0fd1deb..3959517 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@@ -5478,8 -4018,8 +5478,8 @@@ void zend_do_shell_exec(znode *result, opline->opcode = ZEND_SEND_VAR; break; } - opline->op1 = *cmd; - opline->op2.u.opline_num = 1; + SET_NODE(opline->op1, cmd); - opline->op2.opline_num = 0; ++ opline->op2.opline_num = 1; opline->extended_value = ZEND_DO_FCALL; SET_UNUSED(opline->op2); -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] com php-src: Merge branch 'PHP-5.3' into PHP-5.4: Zend/zend_compile.c Zend/zend_language_parser.y
Commit:625000ab442dd4c1bfc6975a4a979f2c5f60a78d Author:Dmitry Stogov Wed, 9 Jan 2013 17:36:44 +0400 Parents: f9e8678dd3a41ed8a100d8201153a41d6fd25f2e d4650c5d69ffb49d476a2969c6200879bd424caf Branches: PHP-5.4 PHP-5.5 master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=625000ab442dd4c1bfc6975a4a979f2c5f60a78d Log: Merge branch 'PHP-5.3' into PHP-5.4 * PHP-5.3: Fixed compilator bug that might cause jump depended on unitialized value Changed paths: MM Zend/zend_compile.c MM Zend/zend_language_parser.y Diff: diff --cc Zend/zend_compile.c index 9acdc5b,8382b48..8f4f9c4 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@@ -4912,28 -3527,12 +4913,28 @@@ void zend_do_end_class_declaration(cons } } - ce->line_end = zend_get_compiled_lineno(TSRMLS_C); + ce->info.user.line_end = zend_get_compiled_lineno(TSRMLS_C); + + /* Check for traits and proceed like with interfaces. + * The only difference will be a combined handling of them in the end. + * Thus, we need another opcode here. */ + if (ce->num_traits > 0) { + zend_op *opline; + + ce->traits = NULL; + ce->num_traits = 0; + ce->ce_flags |= ZEND_ACC_IMPLEMENT_TRAITS; + + /* opcode generation: */ + opline = get_next_op(CG(active_op_array) TSRMLS_CC); + opline->opcode = ZEND_BIND_TRAITS; + SET_NODE(opline->op1, &CG(implementing_class)); + } if (!(ce->ce_flags & (ZEND_ACC_INTERFACE|ZEND_ACC_EXPLICIT_ABSTRACT_CLASS)) - && ((parent_token->op_type != IS_UNUSED) || (ce->num_interfaces > 0))) { + && (parent_token || (ce->num_interfaces > 0))) { zend_verify_abstract_class(ce TSRMLS_CC); - if (ce->num_interfaces) { + if (ce->num_interfaces && !(ce->ce_flags & ZEND_ACC_IMPLEMENT_TRAITS)) { do_verify_abstract_class(TSRMLS_C); } } -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] com php-src: Merge branch 'PHP-5.3' into PHP-5.4: Zend/zend_compile.c
Commit:aff5d084a5c1a8efeeb81d1fc9c5e56692543a0b Author:Xinchen Hui Fri, 4 Jan 2013 11:03:52 +0800 Parents: 5894aa09503eb700b1779d0d6c41b3e2ae698722 c3e6de2227f0200b9db318e181603ffba7991489 Branches: PHP-5.4 Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=aff5d084a5c1a8efeeb81d1fc9c5e56692543a0b Log: Merge branch 'PHP-5.3' into PHP-5.4 Changed paths: MM Zend/zend_compile.c Diff: -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php