dmitry          Thu Mar 16 11:32:00 2006 UTC

  Modified files:              
    /php-src    NEWS 
    /ZendEngine2        zend.c zend_compile.c zend_globals.h 
    /php-src/ext/standard/tests/array   bug33940.phpt 
    /php-src/main       main.c php_globals.h 
  Log:
  Dropped allow_call_time_pass_reference, the error is maden E_STRICT.
  
  
http://cvs.php.net/viewcvs.cgi/php-src/NEWS?r1=1.2102&r2=1.2103&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2102 php-src/NEWS:1.2103
--- php-src/NEWS:1.2102 Thu Mar 16 10:33:22 2006
+++ php-src/NEWS        Thu Mar 16 11:32:00 2006
@@ -4,6 +4,7 @@
 - Unicode support. (Andrei, Dmitry, et al)
 - Dropped safe_mode support (Ilia, Andi)
 - Dropped zend.ze1_compatibility_mode (Dmitry)
+- Dropped allow_call_time_pass_reference, the error is maden E_STRICT. (Dmitry)
 - Dropped register_long_arrays (Dmitry)
 - Droped register_globals support (Pierre)
   - session_register, session_unregister and session_is_registered removed they
http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend.c?r1=1.342&r2=1.343&diff_format=u
Index: ZendEngine2/zend.c
diff -u ZendEngine2/zend.c:1.342 ZendEngine2/zend.c:1.343
--- ZendEngine2/zend.c:1.342    Thu Mar 16 10:33:23 2006
+++ ZendEngine2/zend.c  Thu Mar 16 11:32:00 2006
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend.c,v 1.342 2006/03/16 10:33:23 dmitry Exp $ */
+/* $Id: zend.c,v 1.343 2006/03/16 11:32:00 dmitry Exp $ */
 
 #include "zend.h"
 #include "zend_extensions.h"
@@ -673,7 +673,6 @@
        /* default compile-time values */
        CG(asp_tags) = 0;
        CG(short_tags) = 1;
-       CG(allow_call_time_pass_reference) = 1;
        CG(extended_info) = 0;
 }
 
http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_compile.c?r1=1.695&r2=1.696&diff_format=u
Index: ZendEngine2/zend_compile.c
diff -u ZendEngine2/zend_compile.c:1.695 ZendEngine2/zend_compile.c:1.696
--- ZendEngine2/zend_compile.c:1.695    Wed Mar 15 09:04:48 2006
+++ ZendEngine2/zend_compile.c  Thu Mar 16 11:32:00 2006
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_compile.c,v 1.695 2006/03/15 09:04:48 dmitry Exp $ */
+/* $Id: zend_compile.c,v 1.696 2006/03/16 11:32:00 dmitry Exp $ */
 
 #include <zend_language_parser.h>
 #include "zend.h"
@@ -1642,19 +1642,22 @@
        zend_stack_top(&CG(function_call_stack), (void **) &function_ptr_ptr);
        function_ptr = *function_ptr_ptr;
 
-       if (original_op==ZEND_SEND_REF
-               && !CG(allow_call_time_pass_reference)) {
-               zend_error(E_COMPILE_WARNING,
-                                       "Call-time pass-by-reference has been 
deprecated - argument passed by value;  "
-                                       "If you would like to pass it by 
reference, modify the declaration of %R().  "
-                                       "If you would like to enable call-time 
pass-by-reference, you can set "
-                                       "allow_call_time_pass_reference to true 
in your INI file.  "
-                                       "However, future versions may not 
support this any longer. ",
-                                       (function_ptr && 
UG(unicode))?IS_UNICODE:IS_STRING,
-                                       
(function_ptr?function_ptr->common.function_name.s:"[runtime function name]"));
-       }
-
-       if (function_ptr) {
+       if (original_op==ZEND_SEND_REF) {
+               if (function_ptr &&
+                   function_ptr->common.function_name.v &&
+                   function_ptr->common.type == ZEND_USER_FUNCTION &&
+                   !ARG_SHOULD_BE_SENT_BY_REF(function_ptr, (zend_uint) 
offset)) {
+                       zend_error(E_STRICT,
+                               "Call-time pass-by-reference has been 
deprecated; "
+                               "if you would like to pass argument by 
reference, modify the declaration of %R().",
+                               UG(unicode)?IS_UNICODE:IS_STRING,
+                               function_ptr->common.function_name.v);
+               } else{
+                       zend_error(E_STRICT,
+                               "Call-time pass-by-reference has been 
deprecated");
+               }
+               send_by_reference = 1;
+       } else if (function_ptr) {
                if (ARG_MAY_BE_SENT_BY_REF(function_ptr, (zend_uint) offset)) {
                        op = (param->op_type & 
(IS_VAR|IS_CV))?ZEND_SEND_REF:ZEND_SEND_VAL;
                        send_by_reference = 0;
http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_globals.h?r1=1.150&r2=1.151&diff_format=u
Index: ZendEngine2/zend_globals.h
diff -u ZendEngine2/zend_globals.h:1.150 ZendEngine2/zend_globals.h:1.151
--- ZendEngine2/zend_globals.h:1.150    Thu Mar 16 10:33:23 2006
+++ ZendEngine2/zend_globals.h  Thu Mar 16 11:32:00 2006
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: zend_globals.h,v 1.150 2006/03/16 10:33:23 dmitry Exp $ */
+/* $Id: zend_globals.h,v 1.151 2006/03/16 11:32:00 dmitry Exp $ */
 
 #ifndef ZEND_GLOBALS_H
 #define ZEND_GLOBALS_H
@@ -101,7 +101,6 @@
        zend_bool in_compilation;
        zend_bool short_tags;
        zend_bool asp_tags;
-       zend_bool allow_call_time_pass_reference;
 
        zend_declarables declarables;
 
http://cvs.php.net/viewcvs.cgi/php-src/ext/standard/tests/array/bug33940.phpt?r1=1.3&r2=1.4&diff_format=u
Index: php-src/ext/standard/tests/array/bug33940.phpt
diff -u php-src/ext/standard/tests/array/bug33940.phpt:1.3 
php-src/ext/standard/tests/array/bug33940.phpt:1.4
--- php-src/ext/standard/tests/array/bug33940.phpt:1.3  Thu Aug 11 23:50:04 2005
+++ php-src/ext/standard/tests/array/bug33940.phpt      Thu Mar 16 11:32:00 2006
@@ -24,7 +24,10 @@
 echo 'Array: '; print_r($a);
 echo 'Return: '; print_r($ret);
 ?>
---EXPECT--
+--EXPECTF--
+Strict Standards: Call-time pass-by-reference has been deprecated in 
%sbug33940.php on line 7
+
+Strict Standards: Call-time pass-by-reference has been deprecated in 
%sbug33940.php on line 17
 Array: Array
 (
     [0] => Array
http://cvs.php.net/viewcvs.cgi/php-src/main/main.c?r1=1.676&r2=1.677&diff_format=u
Index: php-src/main/main.c
diff -u php-src/main/main.c:1.676 php-src/main/main.c:1.677
--- php-src/main/main.c:1.676   Thu Mar 16 10:33:23 2006
+++ php-src/main/main.c Thu Mar 16 11:32:00 2006
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: main.c,v 1.676 2006/03/16 10:33:23 dmitry Exp $ */
+/* $Id: main.c,v 1.677 2006/03/16 11:32:00 dmitry Exp $ */
 
 /* {{{ includes
  */
@@ -349,7 +349,6 @@
        PHP_INI_ENTRY_EX("highlight.keyword",           HL_KEYWORD_COLOR,       
PHP_INI_ALL,    NULL,                   php_ini_color_displayer_cb)
        PHP_INI_ENTRY_EX("highlight.string",            HL_STRING_COLOR,        
PHP_INI_ALL,    NULL,                   php_ini_color_displayer_cb)
 
-       STD_PHP_INI_BOOLEAN("allow_call_time_pass_reference",   "1",    
PHP_INI_SYSTEM|PHP_INI_PERDIR,          OnUpdateBool,   
allow_call_time_pass_reference, zend_compiler_globals,  compiler_globals)
        STD_PHP_INI_BOOLEAN("asp_tags",                         "0",            
PHP_INI_SYSTEM|PHP_INI_PERDIR,          OnUpdateBool,                   
asp_tags,                               zend_compiler_globals,  
compiler_globals)
        STD_PHP_INI_BOOLEAN("display_errors",           "1",            
PHP_INI_ALL,            OnUpdateBool,                   display_errors,         
        php_core_globals,       core_globals)
        STD_PHP_INI_BOOLEAN("display_startup_errors",   "0",    PHP_INI_ALL,    
        OnUpdateBool,                   display_startup_errors, 
php_core_globals,       core_globals)
http://cvs.php.net/viewcvs.cgi/php-src/main/php_globals.h?r1=1.104&r2=1.105&diff_format=u
Index: php-src/main/php_globals.h
diff -u php-src/main/php_globals.h:1.104 php-src/main/php_globals.h:1.105
--- php-src/main/php_globals.h:1.104    Thu Mar 16 09:44:41 2006
+++ php-src/main/php_globals.h  Thu Mar 16 11:32:00 2006
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: php_globals.h,v 1.104 2006/03/16 09:44:41 dmitry Exp $ */
+/* $Id: php_globals.h,v 1.105 2006/03/16 11:32:00 dmitry Exp $ */
 
 #ifndef PHP_GLOBALS_H
 #define PHP_GLOBALS_H
@@ -50,7 +50,6 @@
 } arg_separators;
 
 struct _php_core_globals {
-       zend_bool allow_call_time_pass_reference;
        zend_bool implicit_flush;
 
        long output_buffering;

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

Reply via email to