Commit Graph

11342 Commits

Author SHA1 Message Date
Nikita Popov
e8864c39e8 Don't check non-CVs for UNDEF in BOOL(_NOT) 2015-12-14 00:32:40 +01:00
Nikita Popov
d5597fa01f Merge branch 'PHP-7.0' 2015-12-14 00:29:57 +01:00
Nikita Popov
7dc5bc5063 Do not swap operands in array addition
As we support constant array operands nowadays, the original check
didn't work anymore.
2015-12-14 00:29:05 +01:00
Xinchen Hui
ad51c709c3 Merge branch 'PHP-7.0' 2015-12-13 05:06:22 -08:00
Xinchen Hui
07b33992a2 Fixed bug #71109 (ZEND_MOD_CONFLICTS("xdebug") doesn't work) 2015-12-13 05:06:08 -08:00
Xinchen Hui
ac693205b1 Merge branch 'PHP-7.0' 2015-12-12 18:45:39 -08:00
Xinchen Hui
b101a6bbd4 Use format string 2015-12-12 18:45:11 -08:00
Nikita Popov
2589dd121e Drop superfluous assignment
And fix a branch annotation.
2015-12-12 23:21:36 +01:00
Xinchen Hui
0d8f5a43d3 Merge branch 'PHP-7.0'
Conflicts:
	NEWS
2015-12-11 09:13:26 -08:00
Xinchen Hui
778e5f3da5 Fixed bug #71092 (Segmentation fault with return type hinting) 2015-12-11 09:11:28 -08:00
Nikita Popov
1b683efa0f Merge branch 'PHP-7.0' 2015-12-11 16:06:28 +01:00
Nikita Popov
fd3ece8578 Fix bug #71086 2015-12-11 16:05:49 +01:00
Nikita Popov
591fe26d5d Remove BP_VAR_REF
The distinction between BP_VAR_REF and BP_VAR_W is no longer
revelant, since we dropped support for =& new.
2015-12-11 15:56:52 +01:00
Remi Collet
5d2e287982 Merge branch 'PHP-7.0'
* PHP-7.0:
  NEWS
  NEWS
  Fix Bug #71089 No check to duplicate zend_extension
2015-12-11 13:23:36 +01:00
Remi Collet
66398757fc Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  NEWS
  Fix Bug #71089 No check to duplicate zend_extension
2015-12-11 13:22:55 +01:00
Remi Collet
410eacc1a9 Fix Bug #71089 No check to duplicate zend_extension 2015-12-11 13:21:24 +01:00
Dmitry Stogov
061a90f8d1 Describe special meaning of IS_UNUSED oprerand 2015-12-11 02:31:28 +03:00
Dmitry Stogov
dc36810993 Use more compact description encoding schema to free some bits 2015-12-11 01:45:26 +03:00
Dmitry Stogov
047c84521c Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Make duplicate class constant error for internal class
  Make ZEND_CLONE return a TMP_VAR
2015-12-11 00:48:20 +03:00
Dmitry Stogov
cba1a8498c Improve Optimizer debugging facility (print the meaning of extended_value) 2015-12-11 00:47:02 +03:00
Nikita Popov
04e3d82b55 Make duplicate class constant error for internal class
And drop two duplicate constant declarations from intl. These
were leaking previously.
2015-12-10 22:22:49 +01:00
Nikita Popov
8e5e3301a1 Make ZEND_CLONE return a TMP_VAR
As the return value can't be reference and it's unlikely to be
unused.

Also remove some unnecessary checks for ce==NULL. A ce is required
nowadays.
2015-12-10 22:16:25 +01:00
Dmitry Stogov
f30381ec22 Merge branch 'master' of git.php.net:php-src
* 'master' of git.php.net:php-src:
  Add missed tests for FETCH_GLOBAL_LOCK change
  Fix cleanup in bug70748.phpt
2015-12-10 21:20:30 +03:00
Dmitry Stogov
4c9e4caab4 Fixed typo 2015-12-10 21:17:24 +03:00
Nikita Popov
288cc6e192 Add missed tests for FETCH_GLOBAL_LOCK change 2015-12-10 19:17:17 +01:00
Nikita Popov
11f2a393f8 Merge branch 'PHP-7.0' 2015-12-10 19:15:21 +01:00
Nikita Popov
5c5209d676 Fix cleanup in bug70748.phpt
git add Zend/tests usable again...
2015-12-10 19:14:49 +01:00
Nikita Popov
f1278edefc Drop two compiler TODOs
Call-time pass by reference is now a parse error.
There is no benefit in dropping implementing_class currently.
2015-12-10 19:04:59 +01:00
Nikita Popov
c8a64e289c Reintroduce use of FETCH_GLOBAL_LOCK
Just found this old AST todo...

It no longer makes sense as an optimization due to the introduction
of BIND_GLOBAL, however it ensures that the global variable name is
not evaluated twice, which is presumably something we wish to
guarantee.
2015-12-10 19:04:59 +01:00
Bob Weinand
7ea1cf2e57 Improved specializer:
- Allow dispatching from specialized handler to unspecialized one
2015-12-10 20:46:14 +03:00
Nikita Popov
3fa86105f7 Remove FETCH_STATIC_MEMBER flag 2015-12-10 18:25:29 +01:00
Nikita Popov
3d4a2d2002 Merge branch 'PHP-7.0'
Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2015-12-10 18:24:29 +01:00
Nikita Popov
37f3425263 Fix Foo::${42} and similar
Fixes segfault on direct use, segfault on opcache evaluated use,
leak on temporary use.

Fixes analogeous segfault for ${42} on opcache eval as well.
2015-12-10 18:14:40 +01:00
Dmitry Stogov
6f966fad0d Improved specializer (Bob)
- All helpers now may be declatred and called without ZEND_VM_HELPER_EX() and ZEND_VM_DISPATCH_TO_HELPER_EX() macros
- ZEND_VM_HELPER() may declare few arguments
- ZEND_VM_DISPATCH_TO_HELPER() may pass few parameters
- ZEND_VM_INLINE_HELPER() may be used to declare inline helpers (it won't be inlined in SWITH/GOTO executors)
2015-12-10 17:17:59 +03:00
Xinchen Hui
02d7001962 Merge branch 'PHP-7.0' 2015-12-09 21:09:09 +08:00
Xinchen Hui
4c379392b2 Fixed bug #71067 (Local object in class method stays in memory for each call) 2015-12-09 21:07:59 +08:00
Dmitry Stogov
5ee7b7d01a Don't create live-range across NOPs and some other instructions 2015-12-09 05:15:58 +03:00
Dmitry Stogov
c1803bf652 Avoid construction of empty live-ranges because of OP_DATA instruction 2015-12-08 18:10:07 +03:00
Dmitry Stogov
a75c195000 Implemented the RFC Support Class Constant Visibility.
Squashed commit of the following:

commit f11ca0e7a5
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Dec 8 12:38:42 2015 +0300

    Fixed test expectation

commit 211f873f54
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Tue Dec 8 12:28:38 2015 +0300

    Embed zend_class_constant.flags into zend_class_constants.value.u2.access_flags

commit 51deab84b2
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Mon Dec 7 11:18:55 2015 +0300

    Fixed issues found by Nikita

commit 544dbd5b47
Author: Dmitry Stogov <dmitry@zend.com>
Date:   Sat Dec 5 02:41:05 2015 +0300

    Refactored immplementation of https://wiki.php.net/rfc/class_const_visibility
    @reeze created an RFC here and I emailed internals here and didn't get any responses positive/negative.
2015-12-08 12:40:42 +03:00
Xinchen Hui
0495bf5650 Revert "fix typos "paramer" -> "parameters""
ABI BC break

This reverts commit 6ac12f1337.
2015-12-08 10:52:50 +08:00
Márcio Almada
6ac12f1337 fix typos "paramer" -> "parameters" 2015-12-07 14:48:26 +08:00
Márcio Almada
2dcfd8d16f fix typos "paramer" -> "parameters" 2015-12-07 01:59:53 -04:00
Bob Weinand
6e664f60c3 Merge branch 'PHP-7.0' 2015-12-06 02:55:55 +01:00
Bob Weinand
559ede17e1 Fixed bug #71013 (Incorrect exception handler with yield from) 2015-12-06 02:45:19 +01:00
Dmitry Stogov
0d51ebd1a5 Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed bug #71006 (symbol referencing errors on Sparc/Solaris)
2015-12-03 13:40:53 +03:00
Dmitry Stogov
59424bb7bd Fixed bug #71006 (symbol referencing errors on Sparc/Solaris) 2015-12-03 13:28:41 +03:00
Dmitry Stogov
868c3775c6 Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed bug #70997 (When using parentClass:: instead of parent::, static context changed)
2015-11-30 16:54:37 +03:00
Dmitry Stogov
25c5d185fc Fixed bug #70997 (When using parentClass:: instead of parent::, static context changed) 2015-11-30 16:52:57 +03:00
Xinchen Hui
5c707a6cf8 Merge branch 'PHP-7.0' 2015-11-28 23:44:06 -08:00
Xinchen Hui
1f65006fce Fixed bug #70931 (Two errors messages are in conflict) 2015-11-28 23:43:41 -08:00