helly           Sun Jun 19 16:49:18 2005 EDT

  Modified files:              
    /php-src/tests/classes      array_access_003.phpt array_access_005.phpt 
                                array_access_008.phpt 
  Log:
  - Update tests to reflect current situation
  # I don't feel like discussing this issue anymore - maybe we need to find 
  # a way of returning proxies to get the requested behavior back - i'll give
  # it a try for PHP 5.2. So long we'll have to stay with the original 
  # decision that we don't support references at all with ArrayAccess.
  
  
http://cvs.php.net/diff.php/php-src/tests/classes/array_access_003.phpt?r1=1.5&r2=1.6&ty=u
Index: php-src/tests/classes/array_access_003.phpt
diff -u php-src/tests/classes/array_access_003.phpt:1.5 
php-src/tests/classes/array_access_003.phpt:1.6
--- php-src/tests/classes/array_access_003.phpt:1.5     Thu Apr 28 21:18:40 2005
+++ php-src/tests/classes/array_access_003.phpt Sun Jun 19 16:49:17 2005
@@ -12,7 +12,7 @@
                echo __METHOD__ . "($index)\n";
                return array_key_exists($index, $this->a);
        }
-       function &offsetGet($index) {
+       function offsetGet($index) {
                echo __METHOD__ . "($index)\n";
                switch($index) {
                case 1:
@@ -48,12 +48,9 @@
 ===DONE===
 --EXPECTF--
 object::offsetGet(1)
-
-Strict Standards: Only variable references should be returned by reference in 
%sarray_access_003.php on line %d
 string(6) "fooBar"
 object::offsetGet(2)
 int(1)
 object::offsetGet(2)
-object::offsetGet(2)
-int(2)
-===DONE===
+
+Fatal error: Objects used as arrays in post/pre increment/decrement must 
return values by reference in %sarray_access_003.php on line %d
http://cvs.php.net/diff.php/php-src/tests/classes/array_access_005.phpt?r1=1.3&r2=1.4&ty=u
Index: php-src/tests/classes/array_access_005.phpt
diff -u php-src/tests/classes/array_access_005.phpt:1.3 
php-src/tests/classes/array_access_005.phpt:1.4
--- php-src/tests/classes/array_access_005.phpt:1.3     Thu Feb 12 09:12:37 2004
+++ php-src/tests/classes/array_access_005.phpt Sun Jun 19 16:49:17 2005
@@ -14,7 +14,7 @@
                return array_key_exists($this->person, $index);
        }
 
-       function &offsetGet($index) {
+       function offsetGet($index) {
                return $this->person[$index];
        }
 
@@ -39,20 +39,34 @@
 
 $people = new Peoples;
 
+var_dump($people[0]);
 var_dump($people[0]['name']);
-$people[0]['name'] = $people->person[0]['name'] . 'Foo';
+var_dump($people->person[0]['name'] . 'Foo'); // impossible to assign this 
since we don't return references here
+$x = $people[0]; // creates a copy
+$x['name'] .= 'Foo';
+$people[0] = $x;
+var_dump($people[0]);
+$people[0]['name'] = 'JoeFoo';
 var_dump($people[0]['name']);
-$people[0]['name'] .= 'Bar';
+$people[0]['name'] = 'JoeFooBar';
 var_dump($people[0]['name']);
 
-echo "---Done---\n";
 ?>
---EXPECT--
+===DONE===
+--EXPECTF--
 string(3) "Joe"
 string(6) "JoeFoo"
 string(9) "JoeFooBar"
 ---ArrayOverloading---
+array(1) {
+  ["name"]=>
+  string(3) "Joe"
+}
 string(3) "Joe"
 string(6) "JoeFoo"
-string(9) "JoeFooBar"
----Done---
+array(1) {
+  ["name"]=>
+  string(6) "JoeFoo"
+}
+
+Fatal error: Objects used as arrays in post/pre increment/decrement must 
return values by reference in %sarray_access_005.php on line %d
http://cvs.php.net/diff.php/php-src/tests/classes/array_access_008.phpt?r1=1.1&r2=1.2&ty=u
Index: php-src/tests/classes/array_access_008.phpt
diff -u php-src/tests/classes/array_access_008.phpt:1.1 
php-src/tests/classes/array_access_008.phpt:1.2
--- php-src/tests/classes/array_access_008.phpt:1.1     Wed Sep 29 05:36:23 2004
+++ php-src/tests/classes/array_access_008.phpt Sun Jun 19 16:49:17 2005
@@ -14,7 +14,7 @@
                return array_key_exists($this->person, $index);
        }
 
-       function & offsetGet($index) {
+       function offsetGet($index) {
                return $this->person[$index];
        }
 
@@ -40,6 +40,8 @@
 $people = new Peoples;
 
 var_dump($people[0]['name']);
+$people[0]['name'] = 'FooBar';
+var_dump($people[0]['name']);
 $people[0]['name'] = $people->person[0]['name'] . 'Bar';
 var_dump($people[0]['name']);
 $people[0]['name'] .= 'Baz';
@@ -47,12 +49,11 @@
 
 ?>
 ===DONE===
---EXPECT--
+--EXPECTF--
 string(3) "Foo"
 string(6) "FooBar"
 string(9) "FooBarBaz"
 ===ArrayOverloading===
 string(3) "Foo"
-string(6) "FooBar"
-string(9) "FooBarBaz"
-===DONE===
+
+Fatal error: Objects used as arrays in post/pre increment/decrement must 
return values by reference in %sarray_access_008.php on line %d

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

Reply via email to