| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Closes GH-6784
|
|\
| |
| |
| |
| | |
* PHP-8.0:
Mark resource-like objects as non-comparable
|
| |
| |
| |
| |
| |
| |
| | |
As these hold on to some internal resource, there can't be two
"equal" objects with different identity. Make sure the lack of
public properties doesn't result in these being treated as always
equal.
|
| |
| |
| |
| | |
Related to GH-6701
|
| |
| |
| |
| |
| |
| | |
enabled
Closes GH-6675
|
| |
| |
| |
| |
| |
| | |
Closes GH-6289
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
We're starting to see a mix between uses of zend_bool and bool.
Replace all usages with the standard bool type everywhere.
Of course, zend_bool is retained as an alias.
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Historically, the _ex variants separated the zval first, if a
conversion was necessary. This distinction no longer makes sense
since PHP 7.
The only difference that was still left is that _ex checked whether
the type is the same first, but the usage of these macros did not
actually distinguish on whether such an inlined check is valuable
or not in a given context.
Also drop the unused convert_to_explicit_type macros.
|
| |
|
| |
|
|
|
|
| |
Closes GH-6297.
|
|
|
|
|
|
| |
We previously couldn't increase the error level here because it
was coupled to comparison handling. This is no longer the case
in PHP 8.
|
|
|
|
|
| |
This should fix most of the remaining issues with tabs and spaces
being mixed in tests.
|
| |
|
|
|
|
| |
Settling on using quoted string
|
|
|
|
| |
Closes GH-6034
|
|
|
|
| |
Closes GH-5958
|
|
|
|
| |
Closes GH-5926
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
From an engine perspective, named parameters mainly add three
concepts:
* The SEND_* opcodes now accept a CONST op2, which is the
argument name. For now, it is looked up by linear scan and
runtime cached.
* This may leave UNDEF arguments on the stack. To avoid having
to deal with them in other places, a CHECK_UNDEF_ARGS opcode
is used to either replace them with defaults, or error.
* For variadic functions, EX(extra_named_params) are collected
and need to be freed based on ZEND_CALL_HAS_EXTRA_NAMED_PARAMS.
RFC: https://wiki.php.net/rfc/named_params
Closes GH-5357.
|
| |
|
|
|
|
| |
All of these clearly do not need separation support.
|
|
|
|
| |
Closes GH-5758
|
|
|
|
| |
Closes GH-5759
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While performing resource -> object migrations, we're adding
defensive classes that are final, non-serializable and non-clonable
(unless they are, of course). This path adds a ZEND_ACC_NO_DYNAMIC_PROPERTIES
flag, that also forbids the creation of dynamic properties on these objects.
This is a subset of #3931 and targeted at internal usage only
(though may be extended to userland at some point in the future).
It's already possible to achieve this (what the removed
WeakRef/WeakMap code does), but there's some caveats: First, this
simple approach is only possible if the class has no declared
properties, otherwise it's necessary to special-case those
properties. Second, it's easy to make it overly strict, e.g. by
forbidding isset($obj->prop) as well. And finally, it requires a
lot of boilerplate code for each class.
Closes GH-5572.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The hash is used to check whether the arginfo file needs to be
regenerated. PHP-Parser will only be downloaded if this is actually
necessary.
This ensures that release artifacts will never try to regenerate
stubs and thus fetch PHP-Parser, as long as you do not modify any
files.
Closes GH-5739.
|
|
|
|
|
| |
For the common ZVAL_OBJ + GC_ADDREF pattern.
This mirrors the existing ZVAL_STR_COPY API.
|
| |
|
|
|
|
| |
Closes GH-5554.
|
| |
|
|
|
|
| |
Closes GH-5456.
|
|
|
|
| |
xml_parser_set_option(). These cases are, as of now, not being tested.
|
| |
|
|
|
|
|
| |
Migrates ext/standard, ext/tidy, ext/tokenizer,
ext/xml, ext/xml_reader, and ext/xml_writer. Closes GH-5381.
|
|
|
|
|
|
|
| |
Closes GH-5353. From now on, PHP will have reflection information
about default values of parameters of internal functions.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
|
|
|
|
| |
Closes GH-5352
|
| |
|
| |
|
| |
|
|
|
|
| |
Closes GH-5066 As a first step, let's capitalize their initial letter when it is applicable.
|
| |
|
| |
|
| |
|
|
|
|
| |
Except for some bigger ones: reflection, sodium, spl
|
| |
|
|
|
|
|
|
|
| |
Remove most of the `===DONE===` tags and its variations.
Keep `===DONE===` if the test output otherwise becomes empty.
Closes GH-4872.
|
|
|
|
|
|
| |
Make XmlParser final, unclonable and unserializable.
Closes GH-4778.
|
|
|
|
| |
Part of https://wiki.php.net/rfc/engine_warnings.
|
|
|
|
| |
Closes GH-4732.
|
| |
|