1
0
mirror of https://github.com/php/php-src.git synced 2026-04-20 06:21:12 +02:00
Commit Graph

1002 Commits

Author SHA1 Message Date
Xinchen Hui
63a96ebf6a Fixed bug while dealing with ADD_ARRAY_ELEMENT against an existing const array 2018-01-07 14:17:47 +08:00
Xinchen Hui
8d63c834e4 Change assertion 2018-01-05 15:05:05 +08:00
Xinchen Hui
729a6688af Optimized FETCH_CLASS before INSTANCEOF out if possible 2018-01-05 12:58:28 +08:00
Xinchen Hui
1db6c19365 Fixed wrongly const replacing on partial array 2018-01-05 12:29:39 +08:00
Xinchen Hui
4a4602c45c Merge branch 'master' of git.php.net:/php-src
* 'master' of git.php.net:/php-src:
  Happy new year (Update copyright to 2018)
  Happy new year (Update copyright to 2018)
  Revert "Enable ODBC tests on AppVeyor"
  Enable ODBC tests on AppVeyor
  Skip on Travis-CI
  Extend skip section
  2018
  missing changelog entries + fix version and date
  missing changelog entries
  2018
  Trailing whitespaces
2018-01-04 13:45:11 +08:00
Gabriel Caruso
6400264856 Trailing whitespaces
Signed-off-by: Gabriel Caruso <carusogabriel34@gmail.com>
2018-01-03 14:38:00 +01:00
Xinchen Hui
76d0e3d514 Enable replacing const to INSTANCEOF 2018-01-03 18:28:03 +08:00
Xinchen Hui
a6519d0514 year++ 2018-01-02 12:57:58 +08:00
Xinchen Hui
7a7ec01a49 year++ 2018-01-02 12:55:14 +08:00
Xinchen Hui
ccd4716ec7 year++ 2018-01-02 12:53:31 +08:00
Nikita Popov
ffc0a17322 Fix typos 2017-12-30 23:40:33 +01:00
Dmitry Stogov
5c8f8f8fce Use ZEND_FAST_CONCAT instead of ZEND_CONCAT for CONST operands. 2017-12-29 13:54:18 +03:00
Dmitry Stogov
f010423335 Use IS_EQUAL instead of CASE when first operand is CV or CONST. Removed CASE handlers that duplicated IS_EQUAL. 2017-12-29 12:57:58 +03:00
Xinchen Hui
31c0e7b0ec Added integrity check before dfa 2017-12-17 09:48:27 +08:00
Xinchen Hui
4deb63dc5a Merge branch 'PHP-7.2'
* PHP-7.2:
  Updated NEWS
2017-12-17 09:42:18 +08:00
Xinchen Hui
a3b5b93ba9 Updated NEWS 2017-12-17 09:42:01 +08:00
Nikita Popov
388a6bab4c Merge branch 'PHP-7.2' 2017-12-16 22:04:38 +01:00
Nikita Popov
ee45104dba Fixed bug #75698 2017-12-16 22:04:18 +01:00
Nikita Popov
46da97f7da Merge branch 'PHP-7.2' 2017-12-16 21:12:57 +01:00
Nikita Popov
8a4532319d Improve fix for bug #75687
Adding an (incorrect) UNDEF here may cause subsequent narrowing in
other places.

Instead, let's try to handle this edge-case once for all
instructions...
2017-12-16 21:11:40 +01:00
Xinchen Hui
ef9d2cecc6 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75687 (var 8 (TMP) has array key type but not value type)
2017-12-16 23:59:44 +08:00
Xinchen Hui
a20c9bd3fe Fixed bug #75687 (var 8 (TMP) has array key type but not value type) 2017-12-16 23:59:10 +08:00
Anatol Belski
f3f6cd24e9 Modernize realpath and integrate quick variant into virtual_file_ex
The slower I/O as a traditional bottleneck on Windows which is
the target of this patch. The recursive path resolution, while being
an allround solution, is expensive when it comes to the common case.
Files with proper ACLs set can be resolved in one go by usage of specific
API. Those are available since Vista, so actually can be called old. Those
simpler api is used for the cases where no CWD_EXPAND is requested. For
the cases where ACLs are improper, the existing solution based on
FindFirstFile still does good job also partially providing quirks. Cases
involing reparse tags and other non local filesystems are also partially
server by new APIs.

The approach uses both APIs - the quick one for the common case still
integrating realpath cache, and the existing one as a fallback. The tests
show the I/O load drop on the realpath resolution part due to less
system calls for the sub part resolution of paths. In most case it is
justified, as the sub parts were otherwise cached or unused as well. The
realpath() implementation in ioutil is also closer to the POSIX.
2017-12-15 13:23:34 +01:00
David Walker
6d4de4cf05 Implement list() reference assignments
Support list() reference assignments of the form:

    list(&$a, list(&$b, $c)) = $d;

RFC: https://wiki.php.net/rfc/list_reference_assignment
2017-12-09 13:39:52 +01:00
Dmitry Stogov
c789dfee04 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75608 ("Narrowing occurred during type inference" error)
2017-12-04 17:23:34 +03:00
Dmitry Stogov
3503dc7482 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug #75608 ("Narrowing occurred during type inference" error)
2017-12-04 17:22:28 +03:00
Dmitry Stogov
5934bff913 Fixed bug #75608 ("Narrowing occurred during type inference" error) 2017-12-04 17:22:06 +03:00
Dmitry Stogov
eccdc48c56 Use interned strings for function names 2017-11-30 02:06:52 +03:00
Dmitry Stogov
88e257c152 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug in type inference
2017-11-27 10:17:07 +03:00
Dmitry Stogov
a4b2ae69e9 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed bug in type inference
2017-11-27 10:16:46 +03:00
Dmitry Stogov
776bef8447 Fixed bug in type inference 2017-11-27 10:16:16 +03:00
Xinchen Hui
3475197551 Merge branch 'PHP-7.2'
* PHP-7.2:
  Improved fix
2017-11-27 12:03:48 +08:00
Xinchen Hui
9d02227243 Improved fix 2017-11-27 12:03:37 +08:00
Xinchen Hui
a84c7050fd Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75556 (Invalid opcode 138/1/1)
2017-11-25 00:54:28 +08:00
Xinchen Hui
c412b8b384 Fixed bug #75556 (Invalid opcode 138/1/1) 2017-11-25 00:54:15 +08:00
Dmitry Stogov
33b094479b TYPE_CHECK instruction changed. Now it keeps in extended_value a type mask.
This makes check for "boolean" cheaper and allows check combination e.g. (is_string($a) || is_null($a))
2017-11-23 15:58:34 +03:00
Dmitry Stogov
10d2a5c09d Merge branch 'PHP-7.2'
* PHP-7.2:
  typo
2017-11-22 16:31:23 +03:00
Dmitry Stogov
2a6a1fd22c typo 2017-11-22 16:30:57 +03:00
Dmitry Stogov
196f003937 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed assertion on phpMyAdmin-4.7.5 home page
2017-11-08 12:52:46 +03:00
Dmitry Stogov
b6294bbc6c Fixed assertion on phpMyAdmin-4.7.5 home page 2017-11-08 12:51:53 +03:00
Joe Watkins
3d12e70459 Merge branch 'PHP-7.2'
* PHP-7.2:
  fix wrong check of definition_phi->constraint.range.max_ssa_var
2017-11-03 17:50:19 +00:00
Joe Watkins
c3ee17065b Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  fix wrong check of definition_phi->constraint.range.max_ssa_var
2017-11-03 17:49:52 +00:00
MITSUNARI Shigeo
21dbd2ffcd fix wrong check of definition_phi->constraint.range.max_ssa_var 2017-11-03 17:49:42 +00:00
Dmitry Stogov
fcc08ce19f Prevent reference-counting on persistent zvals (internal constants, default properties and constants of internal classes).
New macro ZVAL_COPY_OR_DUP() is used perform duplication, if necessary.
This should eliminate related race-coditions in ZTS build and prevent reference-counting bugs after unclean shutdown.
2017-10-30 23:13:10 +03:00
Xinchen Hui
60e8e4700c Merge branch 'PHP-7.2'
* PHP-7.2:
  Use abbrev
2017-10-30 18:17:50 +08:00
Xinchen Hui
db4eb54149 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Use abbrev
2017-10-30 18:17:41 +08:00
Xinchen Hui
d9de0f8683 Use abbrev 2017-10-30 16:26:59 +08:00
Dmitry Stogov
1f5c0fad21 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed type inference
2017-10-30 10:44:25 +03:00
Dmitry Stogov
49256dcf6f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fixed type inference
2017-10-30 10:44:12 +03:00
Dmitry Stogov
230e505fd8 Fixed type inference 2017-10-30 10:41:27 +03:00