]> granicus.if.org Git - php/commitdiff
Added test for #69017
authorXinchen Hui <laruence@php.net>
Thu, 12 Feb 2015 03:28:16 +0000 (11:28 +0800)
committerXinchen Hui <laruence@php.net>
Thu, 12 Feb 2015 03:28:16 +0000 (11:28 +0800)
Zend/tests/bug69017.phpt [new file with mode: 0644]

diff --git a/Zend/tests/bug69017.phpt b/Zend/tests/bug69017.phpt
new file mode 100644 (file)
index 0000000..762fcbc
--- /dev/null
@@ -0,0 +1,42 @@
+--TEST--
+#69017 (Fail to push to the empty array with the constant value defined in class scope)
+--FILE--
+<?php
+
+class c1
+{
+       const ZERO = 0;
+       const ONE = 1;
+       const MAX = PHP_INT_MAX;
+       public static $a1 = array(self::ONE => 'one');
+       public static $a2 = array(self::ZERO => 'zero');
+       public static $a3 = array(self::MAX => 'zero');
+}
+
+
+c1::$a1[] = 1;
+c1::$a2[] = 1;
+c1::$a3[] = 1;
+
+var_dump(c1::$a1);
+var_dump(c1::$a2);
+var_dump(c1::$a3);
+?>
+--EXPECTF--
+Warning: Cannot add element to the array as the next element is already occupied in %sbug69017.php on line %d
+array(2) {
+  [1]=>
+  string(3) "one"
+  [2]=>
+  int(1)
+}
+array(2) {
+  [0]=>
+  string(4) "zero"
+  [1]=>
+  int(1)
+}
+array(1) {
+  [%d]=>
+  string(4) "zero"
+}