Nikita Popov
ac4e0f0852
Make zend_type a 2-field struct
...
We now store the pointer payload and the type mask separately. This
is in preparation for union types, where we will be using both at
the same time.
To avoid increasing the size of arginfo structures, the
pass_by_reference and is_variadic fields are now stored as part of
the type_mask (8-bit are reserved for custom use).
Different types of pointer payloads are distinguished based on bits
in the type_mask.
2019-11-08 15:15:48 +01:00
Fabien Villepinte
a555cc0b3d
Clean DONE tags from tests
...
Remove most of the `===DONE===` tags and its variations.
Keep `===DONE===` if the test output otherwise becomes empty.
Closes GH-4872.
2019-11-07 21:31:47 +01:00
Nikita Popov
80cfd99074
Reduce reallocations in exif parsing
...
Instead of reallocating lists element by element, increase the
allocated list size exponentially.
2019-11-07 21:20:34 +01:00
Nikita Popov
11649a6d77
Reduce size limit in parser fuzzer
...
Avoid stack overflows during compilation of deeply nested
expressions.
2019-11-07 21:20:34 +01:00
Máté Kocsis
ab6b412a0b
Add stubs for standard lib functions
2019-11-07 17:59:03 +01:00
Máté Kocsis
afe4a879c7
Promote register_tick_function() callback validation warning to an exception
2019-11-07 17:56:58 +01:00
Máté Kocsis
662afc80f8
Remove PHP_SLEEP_NON_VOID as it is not useful anymore
2019-11-07 17:56:26 +01:00
Nikita Popov
e710862f8c
Add compile warning for "confusable" types
...
We have a number of "types" like integer which are not actually
supported as builtin types -- instead they are silently interpreted
as class types.
I've seen this cause confusion a few types already. This change adds
a warning in this case. In the unlikely case that someone legitimately
wants to type against an integer class, the warning can be suppressed
by writing \integer or "use integer", or using Integer (this warning
will only trigger for lowercase spellings).
Closes GH-4815.
2019-11-07 15:05:08 +01:00
Nikita Popov
a573862676
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Wrap hrtime in `extern "c" {}`
2019-11-07 14:42:16 +01:00
Nikita Popov
6ddb381ae5
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Wrap hrtime in `extern "c" {}`
2019-11-07 14:42:11 +01:00
Levi Morrison
b9dfa12853
Wrap hrtime in extern "c" {}
...
This allows it to be used by C++ extensions without them having to do their own forward declares.
Closes GH-4890.
2019-11-07 14:41:58 +01:00
Nikita Popov
ea6d22cfad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix php_pcre_mutex_free()
2019-11-07 14:32:03 +01:00
Nikita Popov
e19f0e86dc
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix php_pcre_mutex_free()
2019-11-07 14:31:55 +01:00
Nikita Popov
6dcc0b859f
Fix php_pcre_mutex_free()
...
We should only set the mutex to NULL if we actually freed it.
Due to missing braces non-main threads may currently set it to
NULL first.
2019-11-07 14:31:19 +01:00
Nikita Popov
e9bdb5cd08
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove outdated comments in test
2019-11-07 14:06:53 +01:00
Nikita Popov
aba89f56ff
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Remove outdated comments in test
2019-11-07 14:06:48 +01:00
Nikita Popov
29f4939923
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Remove outdated comments in test
2019-11-07 14:06:33 +01:00
Nikita Popov
ee243bc471
Remove outdated comments in test
2019-11-07 14:06:23 +01:00
Nikita Popov
cb03bbbf60
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable ifunc resolvers under thread sanitizer as well
2019-11-07 13:11:58 +01:00
Nikita Popov
dacadf5aa3
Disable ifunc resolvers under thread sanitizer as well
2019-11-07 13:08:03 +01:00
Nikita Popov
bae312d040
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add UPGRADING note about default object from empty value
[ci skip]
2019-11-07 11:48:52 +01:00
Nikita Popov
d3d85cbcc1
Add UPGRADING note about default object from empty value
...
Fixes bug #75921 .
[ci skip]
2019-11-07 11:48:02 +01:00
Nikita Popov
0027ad4801
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78759
2019-11-07 11:17:38 +01:00
Nikita Popov
aed4f6e849
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed bug #78759
2019-11-07 11:17:14 +01:00
Nikita Popov
8d2a9d8859
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fixed bug #78759
2019-11-07 11:16:24 +01:00
Nikita Popov
5fa6dcd972
Fixed bug #78759
...
Handle INDIRECT values in array.
2019-11-07 11:15:29 +01:00
Christoph M. Becker
34dda406bd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78788 : ./configure generates invalid php_version.h
2019-11-07 10:01:43 +01:00
max
0988f69634
Fix #78788 : ./configure generates invalid php_version.h
...
Change $SED to "${SED}" such that the IFS is not used to split the
output of that variable.
2019-11-07 10:01:02 +01:00
Nikita Popov
b312598daf
Move extra checks after zpp in get_browser()
2019-11-06 17:50:48 +01:00
Nikita Popov
34ea5b0585
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove bogus skipifs in get_browser tests
2019-11-06 17:50:20 +01:00
Nikita Popov
f494a36618
Remove bogus skipifs in get_browser tests
...
We provide this file, it should be readable.
These checks no longer work, since --INI-- values are no longer
passed to --SKIPIF--.
2019-11-06 17:48:52 +01:00
Máté Kocsis
14bdb0cfc7
Fix consistency issues with array accesses warnings/exceptions
...
* Change a number of "resource used as offset" notices to warnings,
which were previously missed.
* Throw the "resource used as offset" warning for isset() as well.
* Make array_key_exists() behavior with regard to different key
types consistent with isset() and normal array accesses. All key
types now use the usual coercions and array/object keys throw
TypeError.
Closes GH-4887.
2019-11-06 12:56:47 +01:00
Nikita Popov
0b0d4eb0eb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78787
2019-11-06 12:53:29 +01:00
Nikita Popov
a3e454aacc
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed bug #78787
2019-11-06 12:53:21 +01:00
Nikita Popov
6d4965febd
Fixed bug #78787
...
Not the first time inheritance of shadow properties causes an issue,
thankfully this whole concept is gone in PHP 7.4.
2019-11-06 12:52:34 +01:00
Christoph M. Becker
abc382e885
Merge branch 'PHP-7.4'
...
* PHP-7.4:
7.3.13 is next
2019-11-05 18:25:39 +01:00
Christoph M. Becker
537c6a6992
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
7.3.13 is next
2019-11-05 18:25:10 +01:00
Christoph M. Becker
4c9ba3e042
7.3.13 is next
2019-11-05 18:20:56 +01:00
Sara Golemon
f8de6309bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump for 7.2.26-dev
2019-11-05 10:59:04 -05:00
Sara Golemon
566f2b0f69
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Bump for 7.2.26-dev
2019-11-05 10:58:59 -05:00
Sara Golemon
e85cae8ef4
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Bump for 7.2.26-dev
2019-11-05 10:58:35 -05:00
Sara Golemon
d317e16e89
Bump for 7.2.26-dev
2019-11-05 10:57:29 -05:00
Nikita Popov
c849438bd0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78775
2019-11-05 12:16:17 +01:00
Nikita Popov
3e41ade638
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed bug #78775
2019-11-05 12:16:09 +01:00
Nikita Popov
747cb46244
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fixed bug #78775
2019-11-05 12:15:44 +01:00
Nikita Popov
4f984a2fdb
Fixed bug #78775
...
Clear the OpenSSL error queue before performing SSL stream operations.
As we don't control all code that could possibly be using OpenSSL,
we can't rely on the error queue being empty.
2019-11-05 12:13:46 +01:00
Christoph M. Becker
22725639cc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove obsolete oniguruma.patch
2019-11-05 10:19:06 +01:00
Christoph M. Becker
214f4cfadb
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Remove obsolete oniguruma.patch
2019-11-05 10:17:50 +01:00
Christoph M. Becker
85874af404
Remove obsolete oniguruma.patch
...
The proper `SIZEOF_SIZE_T` definitions are available as of Oniguruma
6.9.1; no more need to patch.
2019-11-05 10:16:22 +01:00
Nikita Popov
56cee36374
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead code `ext/mysqlnd/mysqlnd_net.c`.
2019-11-04 21:36:36 +01:00