Nikita Popov
175b9f67f6
Merge branch 'PHP-7.0' into PHP-7.1
2016-12-22 12:47:29 +01:00
Sébastien Santoro
25c96f92f4
Fix IS_UNDEF comparisons in opcache
...
These conditions were formerly `!q->pData` and `!p->pData`, and should
now be detected as undefined variables, using the special type IS_UNDEF.
Incidentally, this syntax raised a logical-not-parentheses compiler
warning, now gone.
2016-12-22 12:46:14 +01:00
Xinchen Hui
82988d3e41
Revert "Reorder the oplines" (Break Zend/tests/return_types/bug71092.phpt)
...
This reverts commit a12f43ee2c
.
2016-12-21 14:24:14 +08:00
Xinchen Hui
6bd41a1d47
Fixed bug #73789 (Strange behavior of class constants in switch/case block)
2016-12-20 21:01:21 +08:00
Xinchen Hui
a12f43ee2c
Reorder the oplines
...
1. we should only do the return type checking when it is really about to
return
2. for 029.php, actually, the exception threw should be discard while it
jmp into finally(it could be observed by change the return to return an array)
3. after this fix, the test 029.phpt behavior consistently with 7.0
4. good for optimizer too
2016-12-17 20:06:18 +08:00
Xinchen Hui
8ba7878f1b
Add an assertion
2016-12-16 11:09:22 +08:00
Xinchen Hui
7cef66c635
Fixed bug #73746 (Method that returns string returns UNKNOWN:0 instead)
2016-12-16 11:06:27 +08:00
Xinchen Hui
8250b3fca1
Fixed possible false assertion failure
2016-12-08 22:04:43 +08:00
Nikita Popov
60249f4390
Fix propagation of QM_ASSIGN into VERIFY_RETURN_TYPE
...
VERIFY_RETURN_TYPE uses different formats for the CONST/non-CONST
cases. If we progate a CONST operand into op1, op1 should be
moved to result.
2016-12-07 23:14:46 +01:00
Nikita Popov
76c4a3db08
Fix bug #73668
...
Not bothering to implement special handling to get an accurate
range for this case.
2016-12-06 22:25:35 +01:00
Nikita Popov
d7e7f74b24
Factor out common binary op code in range inference
...
Instead of repeating the same code for binary ops and their
compound assignment variants, factor the range computation out
into a separate function.
2016-12-06 22:09:44 +01:00
Nikita Popov
3b79f8f408
Fix bug #73654
2016-12-05 20:41:14 +01:00
Dmitry Stogov
54244ba565
Fixed access to uninitialized value
2016-12-01 13:25:50 +03:00
Dmitry Stogov
54f7abfe7d
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Simpler overflow check
fix gcov coverage
2016-12-01 10:34:09 +03:00
Dmitry Stogov
003346c450
Simpler overflow check
2016-12-01 10:30:02 +03:00
Xinchen Hui
a0b28434cc
Fixed bug #73583 (Segfaults when conditionally declared class and function have the same name)
...
bug was introduced in rev 88eae43f
, and the runtime defined key is not
merged-able
2016-11-23 14:24:46 +08:00
Anatol Belski
d61db8d602
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
remove TSRMLS_*
2016-11-22 00:32:42 +01:00
Anatol Belski
5e9b4c26a5
remove TSRMLS_*
2016-11-21 23:53:37 +01:00
Nikita Popov
226b82b127
RC inference fixes
2016-11-17 13:47:36 +01:00
Dmitry Stogov
205c69939a
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Fixed 64-bit build
2016-11-17 14:05:48 +03:00
Dmitry Stogov
c2173c16d0
Fixed 64-bit build
2016-11-17 14:05:22 +03:00
Dmitry Stogov
365d613480
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Overflow check
2016-11-17 13:18:25 +03:00
Dmitry Stogov
d4b3f89c53
Overflow check
2016-11-17 13:17:34 +03:00
Dmitry Stogov
f8f35d0d4e
VERIFY_RETURN_TYPE on references can't be eliminated
2016-11-17 10:41:42 +03:00
Dmitry Stogov
429bfbd4c2
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Accorate handling of too big inodes of chroot directories
2016-11-17 01:14:47 +03:00
Dmitry Stogov
27542d9c9d
Merge branch 'PHP-5.6' into PHP-7.0
...
* PHP-5.6:
Accorate handling of too big inodes of chroot directories
2016-11-17 01:14:23 +03:00
Dmitry Stogov
9849c97b1b
Accorate handling of too big inodes of chroot directories
2016-11-17 01:08:42 +03:00
Nikita Popov
592c10d37c
Merge branch 'PHP-7.0' into PHP-7.1
2016-11-16 21:33:05 +01:00
Mitch Hagstrand
1d8be7c044
Fix #73546 : Logging for opcache has an empty file name
2016-11-16 21:30:40 +01:00
Dmitry Stogov
09ac2bf752
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
"opcache.validate_root" is useless on Windows
2016-11-16 23:20:22 +03:00
Dmitry Stogov
71ee641327
Merge branch 'PHP-5.6' into PHP-7.0
...
* PHP-5.6:
"opcache.validate_root" is useless on Windows
2016-11-16 23:19:56 +03:00
Dmitry Stogov
935d922114
"opcache.validate_root" is useless on Windows
2016-11-16 23:15:14 +03:00
Dmitry Stogov
cd3527baee
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Use full path
2016-11-16 23:09:13 +03:00
Dmitry Stogov
8e350a627a
Merge branch 'PHP-5.6' into PHP-7.0
...
* PHP-5.6:
Use full path
2016-11-16 23:05:00 +03:00
Dmitry Stogov
8202b97077
Use full path
2016-11-16 23:01:40 +03:00
Dmitry Stogov
a04d9e0f1b
Fixed type ingference
2016-11-16 20:49:00 +03:00
Dmitry Stogov
a91f3d475e
Fixed ZTS build
2016-11-16 16:43:57 +03:00
Dmitry Stogov
86460af56c
Merge branch 'PHP-7.0' into PHP-7.1
...
* PHP-7.0:
Fixed bug #69090 (check cached files permissions)
2016-11-16 12:56:15 +03:00
Dmitry Stogov
a1a5b52f3b
Merge branch 'PHP-5.6' into PHP-7.0
...
* PHP-5.6:
Fixed bug #69090 (check cached files permissions)
2016-11-16 12:49:50 +03:00
Dmitry Stogov
ecba563f2f
Fixed bug #69090 (check cached files permissions)
2016-11-16 12:43:10 +03:00
Nikita Popov
5f4f83220a
Don't inline if function has ref arguments
...
Otherwise we end up leaving opcodes like FETCH_DIM_W behind. The
test case demonstrates a leak in particular.
2016-11-12 18:49:41 +01:00
Nikita Popov
3c8beb16c4
Allow early-binding of ZEND_NEW args
2016-11-10 22:52:15 +01:00
Nikita Popov
8106c01afc
Fix block pass leaks
2016-11-10 22:28:32 +01:00
Nikita Popov
62af7e0db8
Merge branch 'PHP-7.0' into PHP-7.1
2016-11-10 22:19:48 +01:00
Nikita Popov
bb3d0c0e17
Fcall optimization: Avoid FETCH_DIM_R with UNUSED op2
2016-11-10 21:36:46 +01:00
Nikita Popov
3048428cf0
Don't elide undef var notice
2016-11-10 14:58:54 +01:00
Nikita Popov
4f76073b6d
Set result of FREE to unused in block pass
2016-11-10 14:55:52 +01:00
Nikita Popov
570e7fa331
Fix ext/xml func info
2016-11-10 14:55:50 +01:00
Nikita Popov
0378121c64
Range inference cleanup
...
Replace inline #ifdefs with some macros. Fix build if NEG_RANGE is
disabled. Fix some typos. Add some comments.
2016-11-10 14:55:40 +01:00
Dmitry Stogov
a5458e7e8e
Fixed reference-counter inference
2016-11-01 19:04:10 +03:00