History log of /php-src/Zend/zend_operators.c (Results 126 – 150 of 722)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 82a34e71 19-Jun-2019 Nikita Popov

Avoid overflow UB in is_numeric_string

We intentionally overflow the signed space here, so make this an
unsigned variable and only cast to signed at the end.

# e4fae9c0 11-Jun-2019 Nikita Popov

Merge branch 'PHP-7.4'


# 8f8fcbbd 27-May-2019 Nikita Popov

Support full variance if autoloading is used

Keep track of delayed variance obligations and check them after
linking a class is otherwise finished. Obligations may either be
unresolv

Support full variance if autoloading is used

Keep track of delayed variance obligations and check them after
linking a class is otherwise finished. Obligations may either be
unresolved method compatibility (because the necessecary classes
aren't available yet) or open parent/interface dependencies. The
latter occur because we allow the use of not fully linked classes
as parents/interfaces now.

An important aspect of the implementation is we do not require
classes involved in variance checks to be fully linked in order for
the class to be fully linked. Because the involved types do have to
exist in the class table (as partially linked classes) and we do
check these for correct variance, we have the guarantee that either
those classes will successfully link lateron or generate an error,
but there is no way to actually use them until that point and as
such no possibility of violating the variance contract. This is
important because it ensures that a class declaration always either
errors or will produce an immediately usable class afterwards --
there are no cases where the finalization of the class declaration
has to be delayed until a later time, as earlier variants of this
patch did.

Because variance checks deal with classes in various stages of
linking, we need to use a special instanceof implementation that
supports this, and also introduce finer-grained flags that tell us
which parts have been linked already and which haven't.

Class autoloading for variance checks is delayed into a separate
stage after the class is otherwise linked and before delayed
variance obligations are processed. This separation is needed to
handle cases like A extends B extends C, where B is the autoload
root, but C is required to check variance. This could end up
loading C while the class structure of B is in an inconsistent
state.

show more ...

# dbd1ecd0 06-Jun-2019 Dmitry Stogov

Merge branch 'PHP-7.4'

* PHP-7.4:
Support for exceptions thrown during "Array to string conversion" error processing
Reduce over-specialization for quite seldom instructions


# be74ca49 06-Jun-2019 Dmitry Stogov

Support for exceptions thrown during "Array to string conversion" error processing

# e029cc4d 05-Jun-2019 Dmitry Stogov

Merge branch 'PHP-7.4'

* PHP-7.4:
Cheaper checks for exceptions thrown from __toString()


# 457392fa 05-Jun-2019 Dmitry Stogov

Cheaper checks for exceptions thrown from __toString()

# 7686b0b8 05-Jun-2019 Nikita Popov

Merge branch 'PHP-7.4'


# a31f4642 26-Feb-2019 Nikita Popov

Allow exceptions in __toString()

RFC: https://wiki.php.net/rfc/tostring_exceptions

And convert some object to string conversion related recoverable
fatal errors into Error excep

Allow exceptions in __toString()

RFC: https://wiki.php.net/rfc/tostring_exceptions

And convert some object to string conversion related recoverable
fatal errors into Error exceptions.

Improve exception safety of internal code performing string
conversions.

show more ...

# 45a0656e 29-May-2019 Nikita Popov

Remove get() object handler

Now that set() is gone, there is little point in keeping get(), as
it is essentially just a different way of writing cast_object()
now.

Closes GH

Remove get() object handler

Now that set() is gone, there is little point in keeping get(), as
it is essentially just a different way of writing cast_object()
now.

Closes GH-4202.

show more ...

# 31a516cf 28-May-2019 Nikita Popov

Remove set() object handler

# e06ec226 24-May-2019 Nikita Popov

Merge branch 'PHP-7.4'


# 49a3b03e 08-May-2019 Nikita Popov

Implement basic variance support

This is a minimal variance implementation: It does not support any
cyclic type dependencies. Additionally the preloading requirements
are much more r

Implement basic variance support

This is a minimal variance implementation: It does not support any
cyclic type dependencies. Additionally the preloading requirements
are much more restrictive than necessary. Hopefully we can relax
these in the future.

show more ...

# 0deb6419 04-Apr-2019 Dmitry Stogov

Merge branch 'PHP-7.4'

* PHP-7.4:
Make is_identical() functions return zend_bool (instead of int)


# 9038d5c6 04-Apr-2019 Dmitry Stogov

Make is_identical() functions return zend_bool (instead of int)

Revision tags: php-7.3.3RC1, php-7.2.16RC1, php-7.2.15, php-7.3.2
# 91ef4124 31-Jan-2019 Dmitry Stogov

Refactor zend_object_handlers API to pass zend_object* and zend_string* insted of zval(s).

Revision tags: php-7.2.15RC1
# 92ac598a 22-Jan-2019 Peter Kokot

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly used by Vim and Emacs editors
yet with recent changes the once working definitions don't work
anymore in Vim without custom plugins or additional configuration.
Neither are these settings synced across the PHP code base.

A simpler and better approach is EditorConfig and fixing code
using some code style fixing tools in the future instead.

This patch also removes the so called modelines for Vim. Modelines
allow Vim editor specifically to set some editor configuration such as
syntax highlighting, indentation style and tab width to be set in the
first line or the last 5 lines per file basis. Since the php test
files have syntax highlighting already set in most editors properly and
EditorConfig takes care of the indentation settings, this patch removes
these as well for the Vim 6.0 and newer versions.

With the removal of local variables for certain editors such as
Emacs and Vim, the footer is also probably not needed anymore when
creating extensions using ext_skel.php script.

Additionally, Vim modelines for setting php syntax and some editor
settings has been removed from some *.phpt files. All these are
mostly not relevant for phpt files neither work properly in the
middle of the file.

show more ...

# a81202ac 30-Jan-2019 Zeev Suraski

Adios, yearly copyright ranges

Revision tags: php-7.3.2RC1, php-5.6.40, php-7.1.26, php-7.3.1, php-7.2.14, php-7.2.14RC1, php-7.3.1RC1, php-5.6.39, php-7.1.25, php-7.2.13, php-7.0.33, php-7.3.0, php-7.1.25RC1, php-7.2.13RC1, php-7.3.0RC6, php-7.1.24, php-7.2.12, php-7.3.0RC5
# 9afce019 01-Nov-2018 Zeev Suraski

Future-proof email addresses

# 54dc07f3 01-Nov-2018 Zeev Suraski

Update email addresses. We're still @Zend, but future proofing it...

Revision tags: php-7.1.24RC1, php-7.2.12RC1, php-7.3.0RC4
# 902d39a3 13-Oct-2018 Peter Kokot

Trim trailing whitespace in source code files

Revision tags: php-7.1.23, php-7.2.11, php-7.3.0RC3
# 7ec8087f 04-Oct-2018 Nikita Popov

Introduce get_properties_for() handler

This handler allows getting the object properties for a particular
purpose, such as array casting, serialization, etc.

Revision tags: php-7.1.23RC1
# c1706980 27-Sep-2018 Dmitry Stogov

Remove dead code (only IS_ARRAY may relive zendi_convert_scalar_to_number()), and micro-optimization.

Revision tags: php-7.2.11RC1, php-7.3.0RC2
# 689c6fb1 18-Sep-2018 Dmitry Stogov

Replace ZEND_ACC_ANON_BOUND, ZEND_ACC_UNRESOLVED_PARENT and ZEND_ACC_UNRESOLVED_INTERFACES with single ZEND_ACC_LINKED.

# dfa166e7 16-Sep-2018 Nikita Popov

Remove unused ZEND_FILE_LINE in i_zval_ptr_dtor

12345678910>>...29