Nikita Popov
8617f2fa8d
Merge branch 'PHP-5.5' into PHP-5.6
2014-10-03 21:27:07 +02:00
Nikita Popov
93288d0095
Fix bug #68188
2014-10-03 21:26:39 +02:00
Nikita Popov
308c0a727e
Merge branch 'PHP-5.5' into PHP-5.6
2014-09-20 21:47:59 +02:00
Nikita Popov
5e977e69e1
Fixed bug #67633
2014-09-20 21:46:25 +02:00
Tjerk Meesters
7e9daf60c1
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
Fixed #67985 - Incorrect last used array index copied to new array after unset
2014-09-09 18:03:10 +08:00
Tjerk Meesters
aca474fa14
Merge branch 'PHP-5.4' into PHP-5.5
...
* PHP-5.4:
Fixed #67985 - Incorrect last used array index copied to new array after unset
2014-09-09 18:00:49 +08:00
Tjerk Meesters
99f0760bfb
Fixed #67985 - Incorrect last used array index copied to new array after unset
...
In master zend_array_dup() is used to do this properly; this is a workaround.
2014-09-09 17:58:45 +08:00
Nikita Popov
d7368c2531
Fix bug #67938 : Segfault when extending interface method with variadic
...
We only want to check extra optional args if the proto function is
variadic, not when we're adding extra variadic args.
2014-08-30 20:43:34 +02:00
Bob Weinand
d5ddd2dbb2
Disable restrictions regarding arrays in constants at run-time.
...
For the discussion around it, see the thread on the mailing list:
http://www.mail-archive.com/internals@lists.php.net/msg68245.html
2014-07-30 17:57:07 +02:00
Dmitry Stogov
d909b6330e
Fixed crash on self-referencing constant expression (part of a constant AST)
2014-07-24 00:37:15 +04:00
Xinchen Hui
1d2f232bd2
Merge branch 'PHP-5.5' into PHP-5.6
2014-07-19 17:19:39 +08:00
Xinchen Hui
8ff00e6e85
Improve fix for #66608
2014-07-19 17:19:01 +08:00
Xinchen Hui
9ce1a36af2
Fixed segfault with empty break
2014-07-19 15:30:50 +08:00
Xinchen Hui
550b3e4306
Merge branch 'PHP-5.5' into PHP-5.6
...
Conflicts:
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
2014-07-18 15:48:56 +08:00
Xinchen Hui
de433d4c47
Fixed bug #66608 (Incorrect behavior with nested "finally" blocks)
2014-07-18 15:45:31 +08:00
Nikita Popov
1ea4b17af2
Merge branch 'PHP-5.5' into PHP-5.6
2014-07-02 17:36:27 +02:00
Nikita Popov
d9ebd0f3d6
Fix bug #67497 : eval with parse error causes segfault in generator
2014-07-02 17:33:31 +02:00
Bob Weinand
1163a7ce24
Mark test as XFAIL until fixed
2014-07-02 17:25:47 +02:00
Bob Weinand
33699a4dab
Messed up syntax of tests
2014-07-02 12:43:27 +02:00
Bob Weinand
09d1a8aaab
Add tests for constant expression arrays
...
Adding one failing (!) test for now about circular constant references embedded in a constant AST, must be fixed before PHP 5.6 release.
2014-07-02 12:33:46 +02:00
Xinchen Hui
9d49492fd6
Fixed bug #67368 (Memory leak with immediately dereferenced array in class constant)
2014-06-24 13:53:05 +08:00
Ferenc Kovacs
53158f2c32
testcase for 67468 (only for debug build, as I could not create a stable segfault without loading other exts like pgsql)
2014-06-23 10:10:17 +02:00
Bob Weinand
7cef3a57ad
Merge branch 'PHP-5.5' into PHP-5.6
2014-06-16 00:42:50 +02:00
Bob Weinand
03ee0ddc5f
Merge branch 'PHP-5.4' into PHP-5.5
2014-06-16 00:41:46 +02:00
Levi Morrison
6c9c44905e
Added tests for bug 67436
2014-06-15 16:31:39 -06:00
Boro Sitnikovski
cfccdc6362
Bug 64744
...
Show the type of the non-object for more descriptive errors
2014-06-08 19:14:58 -07:00
Stanislav Malyshev
8f527fbf14
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
Fix bug 666222
Fix bug 666222
2014-06-08 19:02:24 -07:00
Levi Morrison
f47976dd9b
Fix bug 666222
...
This also adds some smaller, isolated tests related to bug 66622.
2014-06-08 18:59:44 -07:00
Levi Morrison
e030efa4f6
Fix bug 666222
...
This also adds some smaller, isolated tests related to bug 66622.
Conflicts:
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
2014-06-08 18:59:23 -07:00
Nikita Popov
69b5ee61d0
Fixed bug #67169 : []= after_array_splice incorrect
...
This fixes a regression I introduced in beta 1.
2014-05-02 12:49:51 +02:00
Anatol Belski
cfd20c90a5
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
refixed the test related to bug #67072
Improved the fix for bug #67072 , thanks Nikita
2014-04-18 15:17:12 +02:00
Anatol Belski
d963cf94a5
refixed the test related to bug #67072
2014-04-18 15:16:09 +02:00
Stanislav Malyshev
ce4c78dd07
Merge branch 'PHP-5.5' into PHP-5.6
...
* PHP-5.5:
Fixed test case for 5328d42
2014-04-17 17:36:26 -07:00
Tjerk Meesters
5e988a888a
Fixed test case for 5328d42
2014-04-17 17:36:03 -07:00
Ferenc Kovacs
20036525e2
Fix bug #66660 : use str_efree instead of efree to handle interned empty strings correctly
2014-04-13 10:45:46 +02:00
Bob Weinand
ee2a7c7d41
Fixed disallowal of array usage in constants at run-time
...
Added at the same time the possibility of array dereferencing
to complete the set of features (useful application of arrays in constants)
2014-04-11 18:21:46 +02:00
Bob Weinand
f614fc6898
Fix bug #66015 by reverting "Removed operations on constant arrays."
2014-04-11 10:08:44 +02:00
Tjerk Meesters
3d1fa4cb17
Allow T_POW in constant expressions
2014-03-07 09:14:27 +08:00
Nikita Popov
d3b484df82
Disallow use of positional args after unpacking
...
This commit disallows the use of trailing positional arguments
after argument unpacking was used. The following calls are no
longer valid:
fn(...$array, $var);
fn(...$array1, $var, ...$array2);
However, all of the following continue to be valid:
fn($var, ...$array);
fn(...$array1, ...$array2);
fn($var, ...$array1, ...$array2);
The reason behind this change is a stack allocation issue pointed
out by Dmitry: As of PHP 5.5 the stack necessary for pushing
arguments is precomputed and preallocated, as such the individual
SEND opcodes no longer verify that there is enough stack space.
The unpacked arguments will occupy some of that preallocated
space and as such following positional arguments could write past
a stack page boundary.
An alternative resolution for this issue is to ensure that there
is enough space for the remaining arguments in the UNPACK opcode.
However making this allocation precise (rather than using a
conversative over-estimate) would require some effort. Given that
this particular aspect of the feature wasn't very popular in the
first place, it doesn't seem worth the effort.
2014-02-26 16:40:25 +01:00
Anatol Belski
5d0d88d1f2
fixed path separator in the tests
2014-02-21 00:23:01 +01:00
Sara Golemon
14c08ea362
Add more tests for __debugInfo() and fix leak
2014-02-20 12:10:00 -08:00
Sara Golemon
1e752ce9c5
Add __debugInfo() magic method
...
class Foo {
private $val = 'Random, meaningless data';
public function count() { return 42; }
public function __debugInfo() {
return ['count' => $this->count()];
}
}
$f = new Foo;
var_dump($f);
2014-02-17 19:33:56 -08:00
Nikita Popov
31a2ac470c
Fix argument unpacking across stack pages
...
If multiple unpacks were used (or mixed with normal arguments)
parts of the arguments could land on different stack pages. If
this occurs the arguments will now be copied to a new stack page.
The code used to do this is copied verbatim from the PHP 5.4 branch
and only modified to reduce the amount of inlined code.
2014-01-18 14:41:33 +01:00
Nikita Popov
2c47dfbaeb
Implement argument unpacking
...
RFC: https://wiki.php.net/rfc/argument_unpacking
2014-01-11 12:42:08 +01:00
Nikita Popov
72a16851f4
Merge branch 'PHP-5.5' into PHP-5.6
2014-01-04 01:29:15 +01:00
Nikita Popov
d992a972c0
Merge branch 'PHP-5.4' into PHP-5.5
2014-01-04 01:24:54 +01:00
Nikita Popov
7e8e21df0c
Fix bug #66286 : Incorrect object comparison with inheritance
...
std_compare_objects immidiately returned 0 if the property tables
of both objects contain NULL at some index. Thus it would report
objects as equal even though properties following after that
differ.
2014-01-04 01:22:14 +01:00
Xinchen Hui
5eb8d9d700
Merge branch 'PHP-5.6' of https://git.php.net/push/php-src into PHP-5.6
2013-12-15 16:55:29 +08:00
Eric Stenson
330168a247
Fix tests expecting specific resource IDs
...
When Wincache or APC are installed, the resource IDs are not the same.
This is because Wincache takes a few resource objects for itself. As a
result, these tests become false positives.
On Windows boxes, the microtime precision is not granular enough
to reliably register a difference if two calls to uniqid() are made
concurrently. This is a fix to the uniqid() test to avoid the false
positive when run on Windows machines. Also, added a test to exercise
the 'more_entropy' variant of uniqid().
2013-12-15 16:51:21 +08:00
Xinchen Hui
dde552f2ee
Add Tests for #65784 in 5.5
2013-12-13 01:45:45 +08:00