diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2015-03-21 01:00:00 +0300 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2015-03-21 01:00:00 +0300 |
| commit | 430266edfa93e04cf5199d289050ba14866645b3 (patch) | |
| tree | 8417c4f5c30fb6da767376d3f6aa568cd3d7ad88 /ext/standard | |
| parent | a43a9c91374b3cd9864eea5e7c0b0e2e9dafa2e2 (diff) | |
| parent | 1f408af03cf5dcfbcabebb20f162d2ed787b5579 (diff) | |
| download | php-git-430266edfa93e04cf5199d289050ba14866645b3.tar.gz | |
Merge branch 'scalar_type_hints_v5'
* scalar_type_hints_v5: (65 commits)
Fixed in-place modification of IS_CONST operand
Changed SKIPIF messages
ZPP changed to lazely check for "strict/weak" only if it's really necessary. Cleanup.
cleanup
Fixed return type hint handling for constants
Fixed tests
Imroved ZPP rules (condititins reoredered to prevent duplicate checks)
Fixed comments
Fixed error messages
Improved type hinting:
Fixed white spaces
Add check for maintaining reference all the way through both type and return values
Reduce the number of times that the zval needs to be separated in return type checking to those that are necessary
Add test to ensure namespaced code can't use scalar types as class names
Disallow relative namespace type declarations
Add support and tests for null constant default values. Refactor complex conditionals into an extracted function for clarity and code-reuse
Refactor as to not use call info, but add the flag to the op_array.
Fix severity issues with callbacks, start work porting ZEND_STRLEN opcode to work with strict mode, more refactoring to come
Fix C89 compatibility by moving a misplaced if statement
Refactor gotos into more elaborate ifs to eliminate goto failure
...
Diffstat (limited to 'ext/standard')
| -rw-r--r-- | ext/standard/tests/array/krsort_object.phpt | 74 | ||||
| -rw-r--r-- | ext/standard/tests/array/ksort_object.phpt | 74 | ||||
| -rw-r--r-- | ext/standard/tests/strings/lcfirst.phpt | bin | 6878 -> 6906 bytes | |||
| -rw-r--r-- | ext/standard/tests/strings/strlen.phpt | bin | 7091 -> 7099 bytes | |||
| -rw-r--r-- | ext/standard/tests/strings/strpos.phpt | bin | 9991 -> 9999 bytes | |||
| -rw-r--r-- | ext/standard/tests/strings/strstr.phpt | bin | 10531 -> 10539 bytes | |||
| -rw-r--r-- | ext/standard/tests/strings/ucfirst.phpt | bin | 6106 -> 6130 bytes |
7 files changed, 74 insertions, 74 deletions
diff --git a/ext/standard/tests/array/krsort_object.phpt b/ext/standard/tests/array/krsort_object.phpt index 36d8589a82..6236595796 100644 --- a/ext/standard/tests/array/krsort_object.phpt +++ b/ext/standard/tests/array/krsort_object.phpt @@ -15,7 +15,7 @@ Test krsort() function : object functionality - sort objects echo "*** Testing krsort() : object functionality ***\n"; // class declaration for integer objects -class Integer +class IntegerObject { public $class_value; // initializing object member value @@ -25,7 +25,7 @@ class Integer } // class declaration for string objects -class String +class StringObject { public $class_value; // initializing object member value @@ -42,17 +42,17 @@ class String // array of integer objects with different key values $unsorted_int_obj = array ( - 10 => new Integer(11), 20 => new Integer(66), - 3 => new Integer(23), 4 => new Integer(-5), - 50 => new Integer(0.001), 6 => new Integer(0) + 10 => new IntegerObject(11), 20 => new IntegerObject(66), + 3 => new IntegerObject(23), 4 => new IntegerObject(-5), + 50 => new IntegerObject(0.001), 6 => new IntegerObject(0) ); // array of string objects with different key values $unsorted_str_obj = array ( - "axx" => new String("axx"), "t" => new String("t"), - "w" => new String("w"), "py" => new String("py"), - "apple" => new String("apple"), "Orange" => new String("Orange"), - "Lemon" => new String("Lemon"), "aPPle" => new String("aPPle") + "axx" => new StringObject("axx"), "t" => new StringObject("t"), + "w" => new StringObject("w"), "py" => new StringObject("py"), + "apple" => new StringObject("apple"), "Orange" => new StringObject("Orange"), + "Lemon" => new StringObject("Lemon"), "aPPle" => new StringObject("aPPle") ); @@ -88,32 +88,32 @@ echo "Done\n"; bool(true) array(6) { [50]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> float(0.001) } [20]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(66) } [10]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(11) } [6]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(0) } [4]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(-5) } [3]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(23) } @@ -121,42 +121,42 @@ array(6) { bool(true) array(8) { ["w"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(1) "w" } ["t"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(1) "t" } ["py"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(2) "py" } ["axx"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(3) "axx" } ["apple"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "apple" } ["aPPle"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "aPPle" } ["Orange"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(6) "Orange" } ["Lemon"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "Lemon" } @@ -166,32 +166,32 @@ array(8) { bool(true) array(6) { [50]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> float(0.001) } [20]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(66) } [10]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(11) } [6]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(0) } [4]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(-5) } [3]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(23) } @@ -199,42 +199,42 @@ array(6) { bool(true) array(8) { ["w"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(1) "w" } ["t"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(1) "t" } ["py"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(2) "py" } ["axx"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(3) "axx" } ["apple"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "apple" } ["aPPle"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "aPPle" } ["Orange"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(6) "Orange" } ["Lemon"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "Lemon" } diff --git a/ext/standard/tests/array/ksort_object.phpt b/ext/standard/tests/array/ksort_object.phpt index 20e8ba26eb..2d76026aa4 100644 --- a/ext/standard/tests/array/ksort_object.phpt +++ b/ext/standard/tests/array/ksort_object.phpt @@ -15,7 +15,7 @@ Test ksort() function : object functionality - sort objects echo "*** Testing ksort() : object functionality ***\n"; // class declaration for integer objects -class Integer +class IntegerObject { public $class_value; // initializing object member value @@ -26,7 +26,7 @@ class Integer } // class declaration for string objects -class String +class StringObject { public $class_value; // initializing object member value @@ -43,17 +43,17 @@ class String // array of integer objects $unsorted_int_obj = array ( - 11 => new Integer(11), 66 => new Integer(66), - 23 => new Integer(23), -5 => new Integer(-5), - 1 => new Integer(0.001), 0 => new Integer(0) + 11 => new IntegerObject(11), 66 => new IntegerObject(66), + 23 => new IntegerObject(23), -5 => new IntegerObject(-5), + 1 => new IntegerObject(0.001), 0 => new IntegerObject(0) ); // array of string objects $unsorted_str_obj = array ( - "axx" => new String("axx"), "t" => new String("t"), - "w" => new String("w"), "py" => new String("py"), - "apple" => new String("apple"), "Orange" => new String("Orange"), - "Lemon" => new String("Lemon"), "aPPle" => new String("aPPle") + "axx" => new StringObject("axx"), "t" => new StringObject("t"), + "w" => new StringObject("w"), "py" => new StringObject("py"), + "apple" => new StringObject("apple"), "Orange" => new StringObject("Orange"), + "Lemon" => new StringObject("Lemon"), "aPPle" => new StringObject("aPPle") ); echo "\n-- Testing ksort() by supplying various object arrays, 'flag' value is defualt --\n"; @@ -87,32 +87,32 @@ echo "Done\n"; bool(true) array(6) { [-5]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(-5) } [0]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(0) } [1]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> float(0.001) } [11]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(11) } [23]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(23) } [66]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(66) } @@ -120,42 +120,42 @@ array(6) { bool(true) array(8) { ["Lemon"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "Lemon" } ["Orange"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(6) "Orange" } ["aPPle"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "aPPle" } ["apple"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "apple" } ["axx"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(3) "axx" } ["py"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(2) "py" } ["t"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(1) "t" } ["w"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(1) "w" } @@ -165,32 +165,32 @@ array(8) { bool(true) array(6) { [-5]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(-5) } [0]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(0) } [1]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> float(0.001) } [11]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(11) } [23]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(23) } [66]=> - object(Integer)#%d (1) { + object(IntegerObject)#%d (1) { ["class_value"]=> int(66) } @@ -198,42 +198,42 @@ array(6) { bool(true) array(8) { ["Lemon"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "Lemon" } ["Orange"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(6) "Orange" } ["aPPle"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "aPPle" } ["apple"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(5) "apple" } ["axx"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(3) "axx" } ["py"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(2) "py" } ["t"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(1) "t" } ["w"]=> - object(String)#%d (1) { + object(StringObject)#%d (1) { ["class_value"]=> string(1) "w" } diff --git a/ext/standard/tests/strings/lcfirst.phpt b/ext/standard/tests/strings/lcfirst.phpt Binary files differindex e603f4bbf8..6cbd213fbe 100644 --- a/ext/standard/tests/strings/lcfirst.phpt +++ b/ext/standard/tests/strings/lcfirst.phpt diff --git a/ext/standard/tests/strings/strlen.phpt b/ext/standard/tests/strings/strlen.phpt Binary files differindex df39f2469c..ab54445943 100644 --- a/ext/standard/tests/strings/strlen.phpt +++ b/ext/standard/tests/strings/strlen.phpt diff --git a/ext/standard/tests/strings/strpos.phpt b/ext/standard/tests/strings/strpos.phpt Binary files differindex b2bfedeb87..36854d1b37 100644 --- a/ext/standard/tests/strings/strpos.phpt +++ b/ext/standard/tests/strings/strpos.phpt diff --git a/ext/standard/tests/strings/strstr.phpt b/ext/standard/tests/strings/strstr.phpt Binary files differindex bdedb7e9f6..fd7f58ef1a 100644 --- a/ext/standard/tests/strings/strstr.phpt +++ b/ext/standard/tests/strings/strstr.phpt diff --git a/ext/standard/tests/strings/ucfirst.phpt b/ext/standard/tests/strings/ucfirst.phpt Binary files differindex 468f7f034e..8fb1a156b4 100644 --- a/ext/standard/tests/strings/ucfirst.phpt +++ b/ext/standard/tests/strings/ucfirst.phpt |
