Commit Graph

85191 Commits

Author SHA1 Message Date
Anatol Belski
72b34e1372 fix leaking the empty_string in TS builds 2014-10-06 13:38:13 +02:00
Anatol Belski
8d4ee9fbaa remove successive assignment 2014-10-06 11:45:23 +02:00
Timm Friebe
43f3d250f4 Add tests verifying calls work inside echo, concatenation and array access 2014-10-06 06:08:02 +08:00
Tjerk Meesters
35314a416a Updated NEWS and UPGRADING
PHP RFC: Catchable "call to a member function of a non-object"
2014-10-06 05:54:32 +08:00
Tjerk Meesters
82523c0752 Merge branch 'pr/647'
* pr/647: (33 commits)
  zend_uint -> uint32_t
  Fix nesting for *non*-compile-time-resolveable functions See a1a4ba9511 (commitcomment-7414223)
  Add tests for calls to nested, *non*-compile-time-resolveable functions See a1a4ba9511 (commitcomment-7414362)
  Make list of opcodes used for nesting calculation consistent   with `zend_do_convert_call_user_func()` in Zend/zend_compile.c
  Rewrite code to use ZEND_VM_JMP() instead of repeated ZEND_VM_INC_OPCODE() calls
  QA: Simplify code to find matching ZEND_DO_FCALL_BY_NAME CG(context).nested_calls is stored inside the initializer's result.num and inside the finalizer's op2.num, by comparing these we don't need to count manually, and are thus safer from future expansion with specialized opcodes e.g.
  Fix expected fatal error, now is catchable fatal
  Adjust expected fatal error message Now also includes "on [TYPE]" after merge from master
  Check for memory leaks when not using return value
  Adjust expected fatal error message Now also includes "on [TYPE]" after merge from master
  Add tests with arrays as parameters
  Handle ZEND_NEW nesting
  Also verify nesting with dynamically called static methods
  Handle ZEND_INIT_NS_FCALL_BY_NAME nesting
  QA: Refactor: Split tests a bit to make them more comprehendable
  Support nested static calls
  Handle ZEND_EXT_FCALL_END, skipping if necessary Verified with running tests with new "-e" run-tests arg: $ make test TESTS=Zend/tests/*-on-non-objects-*phpt TEST_PHP_ARGS=-e # Tests passed    :   11 (100.0%)
  Add support for PHP's 'extended information for debugger/profiler' mode
  Verify non-CV-operands also work See discussion https://github.com/php/php-src/pull/647#issuecomment-48050551
  Only allocate NULL return value if it's actually used
  ...

Conflicts:
	ext/date/tests/bug67118.phpt
2014-10-06 05:52:43 +08:00
Nikita Popov
58f389772f Fix $this CV init for include/eval
Fixes bug #68148
2014-10-05 23:38:59 +02:00
Nikita Popov
9bc14f9632 Fix dynamic calls to static methods with fci->object
func may already be freed at the time the static flag was checked.
2014-10-05 23:11:17 +02:00
Nikita Popov
fb34cd90f8 Fix $arr =& $arr[0]
value_ptr can be invalidated by the ptr_dtor, so backup the
zend_reference in an extra variable.
2014-10-05 22:58:40 +02:00
Nikita Popov
24315f2dd7 Add UPGRADING stubs for a number of recent changes 2014-10-05 22:10:11 +02:00
Nikita Popov
a86fd31c8c Regenerate tokenizer data
Also fix the tokenizer_data_gen.sh script after 64bit changes.
2014-10-05 22:09:28 +02:00
Nikita Popov
292421d3a1 Fix unused variable warning 2014-10-05 21:58:38 +02:00
Nikita Popov
e756333bbb Remove <% and <script language="php"> tags
As per https://wiki.php.net/rfc/remove_alternative_php_tags.

Removes:
 * <% opening tag
 * %> closing tag
 * <%= short opening tag
 * /<script\s+language\s*=\s*(php|"php"|'php')\s*>/i opening tag
 * /</script>/i closing tag
 * asp_tags ini directive
2014-10-05 21:57:05 +02:00
Anatol Belski
d58b70622a properly export tsrm_strtok_r()
for this particular case fixing phar shared build, but for the
general usage anyway
2014-10-05 13:20:27 +02:00
Dmitry Stogov
7c7b9184b1 Fixed list() behavior inconsistency (string handling is disabled for all cases, ArrayAccess objects handling is enabled for all cases, ZEND_FETCH_DIM_TMP_VAR opcode is renamed into ZEND_FETCH_LIST, ZEND_FETCH_ADD_LOCK flag is removed). 2014-10-05 13:02:58 +04:00
Johannes Schlüter
429e1b45a7 Merge branch 'PHP-5.6' 2014-10-04 20:07:00 +02:00
Johannes Schlüter
79ca53b62b Merge branch 'PHP-5.5' into PHP-5.6 2014-10-04 20:06:44 +02:00
Johannes Schlüter
b386991471 Fix accidental edit in previous commit 2014-10-04 20:06:02 +02:00
Johannes Schlüter
a1347a0190 Merge branch 'PHP-5.6' 2014-10-04 20:00:40 +02:00
Johannes Schlüter
61d29990b4 Merge branch 'PHP-5.5' into PHP-5.6 2014-10-04 20:00:10 +02:00
Johannes Schlüter
136dd53ac2 Fix arginfo 2014-10-04 19:59:21 +02:00
Florian MARGAINE
9680829389 DateTimeZone::getOffset() now accepts a DateTimeInterface
Fixes #68062

Should be backported to PHP-5.6 and PHP-5.5.

Conflicts:
	ext/date/tests/bug67118.phpt
2014-10-04 16:06:04 +01:00
Derick Rethans
e326377824 Merge branch 'PHP-5.6' 2014-10-04 16:00:29 +01:00
Derick Rethans
0e5f475f5e Merge branch 'PHP-5.5' into PHP-5.6 2014-10-04 15:59:17 +01:00
Derick Rethans
0874ef624c Merge branch 'PHP-5.4' into PHP-5.5 2014-10-04 15:58:40 +01:00
Florian MARGAINE
046c345de5 DateTimeZone::getOffset() now accepts a DateTimeInterface
Fixes #68062
2014-10-04 15:58:24 +01:00
Dmitry Stogov
2e1b8ba4b7 Moved checks and error reporting related to static methods from DO_FCALL inti INTI_FCALL* opcodes that may really deal with static methods. (In some rare cases it may lead to different order of warning messages). 2014-10-04 14:55:44 +04:00
Nikita Popov
f1e21c4979 Fix test gc_029_zts.phpt
In ZTS the default properties are duplicated (instead of copied),
so the array has one lower RC than on NTS and as such gets destroyed
during GC, increasing the cycle count by 3. PHP 5.6 didn't always
copy default properties on ZTS, which is where the difference comes
from.
2014-10-04 00:37:15 +02:00
George Wang
2fd7d60ea0 Merge branch 'master' of git.php.net:php-src 2014-10-03 16:43:58 -04:00
George Wang
0e18003374 Merge branch 'PHP-5.6' of git.php.net:php-src into PHP-5.6 2014-10-03 16:43:35 -04:00
George Wang
ef0eed7f5f Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5 2014-10-03 16:43:08 -04:00
George Wang
a7d2747890 Fixed a bug that causes crash when environment variable is access while parsing php.ini 2014-10-03 16:42:42 -04:00
George Wang
5b08e56eca Fixed a bug that causes crash when environment variable is access while parsing php.ini 2014-10-03 16:42:27 -04:00
George Wang
0cc2600ec6 Fixed a bug that causes crash when environment variable is access while parsing php.ini 2014-10-03 16:42:15 -04:00
Anatol Belski
e9b2340151 fix asinh delivering -0 when the arg is 0 2014-10-03 22:18:21 +02:00
Nikita Popov
b68886f7b5 Mark test for full GC root buffer as XFAIL 2014-10-03 22:02:02 +02:00
Nikita Popov
4e33f40445 Fix two date tests
New behavior seems much more reasonable - nothing should be able
to touch the $this value like that.
2014-10-03 22:02:02 +02:00
Nikita Popov
5831cca957 Mark three foreach tests as XFAIL
A lot of work is needed to properly handle all foreach edge cases,
which is not going to happen anytime soon. So marking these tests
as XFAIL for now.
2014-10-03 22:02:02 +02:00
Anatol Belski
d2161c8104 reveal some newer libcurl features in MINFO 2014-10-03 21:47:00 +02:00
Nikita Popov
c6b982a55d Merge branch 'PHP-5.6' 2014-10-03 21:42:35 +02:00
Nikita Popov
56da3638c4 Merge branch 'PHP-5.5' into PHP-5.6 2014-10-03 21:42:28 +02:00
Nikita Popov
d67c05bb89 Fix bug number 2014-10-03 21:41:58 +02:00
Nikita Popov
443374675e Merge branch 'PHP-5.6'
Conflicts:
	Zend/zend_object_handlers.c
2014-10-03 21:30:06 +02:00
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
e7623f470f Fix bug #68133 and bug #68135 2014-10-03 21:06:26 +02:00
Anatol Belski
1ff094deb4 remove the remains of dsp files handling 2014-10-03 19:38:40 +02:00
Anatol Belski
ea5f6eaf19 fix EX usage 2014-10-03 19:23:34 +02:00
Anatol Belski
647ebe6bf2 remove misprint parentheses 2014-10-03 19:23:33 +02:00
Anatol Belski
55c6737b73 remove misprint parentheses 2014-10-03 19:23:32 +02:00
Dmitry Stogov
bd9a234645 Replaced EG(This) and EX(object) with EX(This).
Internal functions now recieves zend_execute_data as the first argument.
2014-10-03 19:32:46 +04:00