Commit Graph

2278 Commits

Author SHA1 Message Date
Xinchen Hui
69492398f3 Unnecessary anymore 2016-03-17 15:26:56 +08:00
Xinchen Hui
f3dd50d650 Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed test script
  Update NEWS
  Fixed bug #71841 (EG(error_zval) is not handled well)
  Fixed bug #71840 (Unserialize accepts wrongly data)

Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
2016-03-17 15:26:40 +08:00
Xinchen Hui
fe1a3fc08b Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
  Fixed bug #71841 (EG(error_zval) is not handled well)
  Fixed bug #71840 (Unserialize accepts wrongly data)

Conflicts:
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
	ext/standard/var_unserializer.c
2016-03-17 15:22:44 +08:00
Xinchen Hui
5546f8be56 Fixed bug #71841 (EG(error_zval) is not handled well) 2016-03-17 15:16:47 +08:00
Xinchen Hui
b9aed47a7a Fixed Bug #71824 (null ptr deref _zval_get_string_func (zend_operators.c:851)) 2016-03-17 11:56:32 +08:00
Nikita Popov
d9f0c8429d Merge branch 'PHP-7.0' 2016-03-11 22:28:50 +01:00
Grigorii Sokolik
ccc5150f15 Fix bug #71767 2016-03-11 22:27:48 +01:00
Xinchen Hui
4c388004d4 Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed bug #71754 (Regression in PHP7.0: trivial script segfaults php-cgi)
  Bug #71756 (Call-by-reference widens scope to uninvolved functions when used in switch)
  tsrm_win32_get_path_sid_key might returns NULL (Partially fix bug #71752)
2016-03-10 15:03:25 +08:00
Xinchen Hui
9833c76d3f Bug #71756 (Call-by-reference widens scope to uninvolved functions when used in switch) 2016-03-10 14:58:10 +08:00
Francois Laupretre
370b7039e4 Add support for negative string offsets (syntax) 2016-03-09 14:41:37 +01:00
Nikita Popov
35b34d7235 Merge branch 'PHP-7.0'
Conflicts:
	Zend/zend_language_scanner.c
2016-03-06 21:39:20 +01:00
Nikita Popov
860dc17ab7 Fixed bug #71724 2016-03-06 21:38:21 +01:00
Xinchen Hui
b17d2ad5f6 Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed bug #71695 (Global variables are reserved before execution).
2016-03-01 19:21:16 +08:00
Xinchen Hui
186844be92 Fixed bug #71695 (Global variables are reserved before execution).
Instead of slow down hash_merge, we may also check the array(whether it
contains INDIRECT) outside of the loop, however, consisdering hash_merge
is not widly used, I prefer fix this in the current way to keep the
codes simple
2016-03-01 19:19:07 +08:00
Nikita Popov
a1c9bd8803 Merge branch 'PHP-7.0' 2016-02-24 22:35:14 +01:00
Nikita Popov
b657554585 Fix typo in foreach_017.phpt 2016-02-24 22:34:50 +01:00
Nikita Popov
9d137f37fc Merge branch 'PHP-7.0' 2016-02-24 14:09:14 +01:00
Nikita Popov
d1057cc139 Fixed bug #71470
Don't report hashtable iterator leaks on unclean shutdown, those
are expected.
2016-02-24 14:09:03 +01:00
Bob Weinand
2dc9aa9bea Merge branch 'PHP-7.0' 2016-02-18 13:54:19 +01:00
Bob Weinand
3ce6ad9d13 Fixed bug #71622 (Strings used in pass-as-reference cannot be used to invoke C::$callable()) 2016-02-18 13:53:15 +01:00
Bob Weinand
77ca527c91 Merge branch 'PHP-7.0' 2016-02-15 22:43:58 +01:00
Bob Weinand
23b770f31f Fixed bug #71601 (finally block not executed after yield from) 2016-02-15 22:37:21 +01:00
Francois Laupretre
be607e724c Fix bug #71572
Discussed on the internals list as part of
http://markmail.org/message/fa625yc2eegk2dio.
2016-02-14 13:18:23 +01:00
Nikita Popov
502dd99a6c Fix ZEND_NEW live ranges
While the def starts at DO_FCALL, the variable should still be the
result of NEW, not DO_FCALL.

I had to fix the test for #68652, because the code started to
(correctly) free the "new self()" object, which triggered an
infinite destructor loop.
2016-02-13 19:04:54 +01:00
Nikita Popov
c0c73f7083 Fix bug #69989
This should cover all the basic cycles. Anything further would
require scanning the call stack and live temporaries.
2016-02-12 18:52:53 +01:00
Nikita Popov
d1b777bd99 Merge branch 'PHP-7.0' 2016-02-12 17:58:12 +01:00
Nikita Popov
ccc06e252b Forbid yield from in by-reference generators
The current yield from implementation doesn't support by-ref
yields. It's likely not worthwhile to actually implement this,
but we should at least keep the door open for the future by
issuing a compile error.

Refs bug #71252.
2016-02-12 17:55:29 +01:00
Nikita Popov
f75be35312 Support partial GC for unfinished generators
This doesn't cover everything yet, but should be a good start for
cycled in unfinished generators.
2016-02-11 16:38:30 +01:00
Nikita Popov
7453348ca8 Merge branch 'PHP-7.0' 2016-02-11 16:25:55 +01:00
Nikita Popov
1322672c0b Fix dangling send target when using yield from
Also drop some unnecessary TRY_DELREFs -- leftovers from the days
when null was refcounted.
2016-02-11 16:25:16 +01:00
Nikita Popov
c6f2d61c7c Merge branch 'PHP-7.0' 2016-02-10 19:04:33 +01:00
Nikita Popov
aa3f44a395 Crude generator GC for value/key/retval
These values remain live after the generator has been closed, so
they are particularly susceptible to leaking cycles.
2016-02-10 19:03:02 +01:00
Nikita Popov
abc06b91cd Merge branch 'PHP-7.0'
Conflicts:
	Zend/zend_compile.c
2016-02-06 16:43:54 +01:00
Nikita Popov
9f82f21d01 Fix bug #71529 2016-02-06 16:43:28 +01:00
Dmitry Stogov
e99fe9865e Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed bug #71474 (Crash because of VM stack corruption on Magento2).
2016-01-28 11:54:48 +03:00
Dmitry Stogov
6039d2d914 Fixed bug #71474 (Crash because of VM stack corruption on Magento2). 2016-01-28 11:41:15 +03:00
Bob Weinand
9017bb94d4 Merge branch 'PHP-7.0' 2016-01-24 19:55:31 +01:00
Bob Weinand
001ce475ee Fixed bug #71441 (Typehinted Generator with return in try/finally crashes) 2016-01-24 19:55:16 +01:00
Xinchen Hui
0df9b51479 Return meaningful value 2016-01-22 15:34:56 +08:00
Xinchen Hui
4ed5b4cdf5 Typo (SKIPF -> SKIPIF) 2016-01-21 15:27:53 +08:00
Xinchen Hui
145555f81c Cover overloaded functions 2016-01-21 14:31:03 +08:00
Xinchen Hui
86883b793b Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed bug #71336 (Wrong is_ref on properties as exposed via get_object_vars())
2016-01-13 17:38:36 +08:00
Xinchen Hui
39f0950746 Fixed bug #71336 (Wrong is_ref on properties as exposed via get_object_vars()) 2016-01-13 17:38:18 +08:00
Dmitry Stogov
d47285648c Merge branch 'PHP-7.0'
* PHP-7.0:
  Fixed bug #71248 (Wrong interface is enforced)
  Update NEWS
2016-01-13 11:42:50 +03:00
Dmitry Stogov
50be2c89be Fixed bug #71248 (Wrong interface is enforced) 2016-01-13 11:41:57 +03:00
Nikita Popov
35662c9bd3 Forbid double use() and use() of param
Also commit a test I forgot to add for forbidden use() of
auto-globals.
2016-01-12 15:37:39 +01:00
Xinchen Hui
9c2dde98db Merge branch 'PHP-7.0' 2016-01-07 07:05:31 -08:00
Xinchen Hui
16a2b47394 Fixed bug #71300 (Segfault in zend_fetch_string_offset) 2016-01-07 07:05:17 -08:00
Bob Weinand
13ccb2ff08 Merge branch 'PHP-7.0' 2016-01-07 11:56:51 +01:00
Bob Weinand
033d608771 Fixed bug #71297 (Memory leak with yield from) 2016-01-07 11:56:21 +01:00