History log of /php-src/Zend/zend_API.h (Results 1 – 25 of 701)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 8d12f666 24-Aug-2024 Máté Kocsis

Fix registration of internal readonly child classes (#15459)

Currently, internal classes are registered with the following code:

INIT_CLASS_ENTRY(ce, "InternalClass", class_Internal

Fix registration of internal readonly child classes (#15459)

Currently, internal classes are registered with the following code:

INIT_CLASS_ENTRY(ce, "InternalClass", class_InternalClass_methods);
class_entry = zend_register_internal_class_ex(&ce, NULL);
class_entry->ce_flags |= ...;

This has worked well so far, except if InternalClass is readonly. It is because some inheritance checks are run by zend_register_internal_class_ex before ZEND_ACC_READONLY_CLASS is added to ce_flags.

The issue is fixed by adding a zend_register_internal_class_with_flags() zend API function that stubs can use from now on. This function makes sure to add the flags before running any checks. Since the new API is not available in lower PHP versions, gen_stub.php has to keep support for the existing API for PHP 8.3 and below.

show more ...


# 5853cdb7 20-Aug-2024 Gina Peter Bnayard

Use "must not" instead of "cannot" wording


# 96d572a1 18-Aug-2024 Gina Peter Bnayard

Zend: Add helper for "cannot be empty" ValueError


# 51379d66 06-Jun-2024 Gina Peter Banyard

Zend: Add object_init_with_constructor() API (#14440)

This will instantiate the object and execute its constructor with the given parameters.


# a89d22cc 17-May-2024 Tim Düsterhus

Make the `fcc` parameter `const` in `zend_call_known_fcc` (#14259)

This makes it legal to call the function from a caller that only has a `const`
pointer to the `fcc` to prevent accident

Make the `fcc` parameter `const` in `zend_call_known_fcc` (#14259)

This makes it legal to call the function from a caller that only has a `const`
pointer to the `fcc` to prevent accidental modification.

show more ...


# 1c30c5e7 18-Apr-2024 Ilija Tovilo

Print location on class redeclaration

Fixes GH-13950
Closes GH-13999


# fd73681c 09-Apr-2024 Arnaud Le Blanc

Fix GCC warning when using getThis() in a conditional (#13923)

Since GCC 12.x, using getThis() in a conditional yields a warning:

<source>:12:22: warning: the comparison will al

Fix GCC warning when using getThis() in a conditional (#13923)

Since GCC 12.x, using getThis() in a conditional yields a warning:

<source>:12:22: warning: the comparison will always evaluate as 'true' for
the address of 'This' will never be NULL [-Waddress]
12 | return getThis() ? 2 : 3;
| ^

show more ...


# f2e199e8 25-Feb-2024 Máté Kocsis

Implement "support doc comments for internal classes and functions" (#13266)

Fixes #13130


# 631bc816 06-Feb-2024 Ilija Tovilo

Implement stackless internal function calls

Co-authored-by: Dmitry Stogov <dmitry@zend.com>

Closes GH-12461


# 345ac90e 11-Oct-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Introduce Z_PARAM_FUNC_EX2 to maintain compatibility (#12419)

Commit d86314939c added an additional parameter to Z_PARAM_FUNC_EX.
To maintain compatibility with third-party extensions, w

Introduce Z_PARAM_FUNC_EX2 to maintain compatibility (#12419)

Commit d86314939c added an additional parameter to Z_PARAM_FUNC_EX.
To maintain compatibility with third-party extensions, we keep
Z_PARAM_FUNC_EX as it used to be, and add Z_PARAM_FUNC_EX2 instead.

show more ...


# d8631493 06-Oct-2023 George Peter Banyard

Zend: Add ZPP F type check for callables that do not free trampolines

As refetching it with the new FCC API does get tedious


# 8a812c3f 19-Sep-2023 Niels Dossche <7771979+nielsdos@users.noreply.github.com>

Fix GH-12215: Module entry being overwritten causes type errors in ext/dom (PHP 8.4)

When we try to load an extension multiple times, we still overwrite the
type, module number, and hand

Fix GH-12215: Module entry being overwritten causes type errors in ext/dom (PHP 8.4)

When we try to load an extension multiple times, we still overwrite the
type, module number, and handle. If the module number is used to
indicate module boundaries (e.g. in reflection and in dom, see e.g.
dom_objects_set_class_ex), then all sorts of errors can happen.

In the case of ext/dom, OP's error happens because the following
happens:
- The property handler is set up incorrectly in
dom_objects_set_class_ex() because the wrong module number is
specified. The class highest in the hierarchy is DOMNode, so the
property handler is incorrectly set to that of DOMNode instead of
DOMDocument.
- The documentElement property doesn't exist on DOMNode, it only exists
on DOMDocument, so it tries to read using zend_std_read_property().
As there is no user property called documentElement, that read
operation returns an undef value.
However, the type is still checked, resulting in the strange exception.

Solve this by changing the API such that the data is only overwritten if
it's owned data.

Closes GH-12246.

show more ...


# 80e90ad7 07-Mar-2023 George Peter Banyard

Add number or str ZPP macros


# 6f63d4b2 19-Apr-2023 Ilija Tovilo

Fix -Wenum-int-mismatch warnings on gcc 13

Closes GH-11103


# 414f71a9 16-Apr-2023 Máté Kocsis

Typed class constants (#10444)

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

Co-Authored-By: Ben <7127204+moliata@users.noreply.github.com>
Co-Authored-By: Bob Weinand <31

Typed class constants (#10444)

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

Co-Authored-By: Ben <7127204+moliata@users.noreply.github.com>
Co-Authored-By: Bob Weinand <3154871+bwoebi@users.noreply.github.com>
Co-Authored-By: Ilija Tovilo <ilija.tovilo@me.com>

show more ...


# 0e706937 04-Apr-2023 Dmitry Stogov

Revert "Zend/zend_types.h: move `IS_*` to `zend_type_code.h`"

This reverts commit 0270a1e54c0285fa3c89ee2b0120073ef57ab5fa.


# 61b19ba3 04-Apr-2023 Dmitry Stogov

Revert "Zend/zend_types.h: move `zend_uchar.h` to `zend_char.h`"

This reverts commit 42577c6b6b7577c57c161ee4a74cb193382bf1e0.


# 717335ec 06-Mar-2023 Derick Rethans

Fixed macro generation for variadics, which don't have a default value


# 7fcea9d2 03-Mar-2023 Derick Rethans

Add missing ZEND_ARG_VARIADIC_OBJ_TYPE_MASK macro, and use consistent class_name variable name


# 42577c6b 13-Jan-2023 Max Kellermann

Zend/zend_types.h: move `zend_uchar.h` to `zend_char.h`

Prepare to fix the cyclic header dependency from `zend_string.h`.


# 0270a1e5 21-Feb-2023 Max Kellermann

Zend/zend_types.h: move `IS_*` to `zend_type_code.h`

More decoupling of circular header dependencies.


# 413844d6 18-Feb-2023 Max Kellermann

Zend/zend_types.h: deprecate zend_bool, zend_intptr_t, zend_uintptr_t (#10597)

These types are standard C99.

For compatibility with out-of-tree extensions, keep the typedefs
in

Zend/zend_types.h: deprecate zend_bool, zend_intptr_t, zend_uintptr_t (#10597)

These types are standard C99.

For compatibility with out-of-tree extensions, keep the typedefs
in main/php.h.

show more ...


# 7936c808 23-Jan-2023 Máté Kocsis

Fix GH-8329 Print true/false instead of bool in error and debug messages (#8385)


# bf1cfc07 16-Jan-2023 Christoph M. Becker

Revert GH-10300

Cf. <https://github.com/php/php-src/pull/10220#issuecomment-1383739816>.

This reverts commit 68ada76f9a659745f572539b72afa06fa75a866f.
his reverts commit 45384c6

Revert GH-10300

Cf. <https://github.com/php/php-src/pull/10220#issuecomment-1383739816>.

This reverts commit 68ada76f9a659745f572539b72afa06fa75a866f.
his reverts commit 45384c6e201eda9963e2fcc18946a9446230a2d6.
This reverts commit ef7fbfd71025f034b0bfcb413efd181ce798fc1b.
This reverts commit 9b9ea0d7c696f2990a159b2a2dafbc04547dc10f.
This reverts commit f15747c26be4a2330dc0cf3ea442f53f30f84cac.
This reverts commit e883ba93c40827fafd7868517eb48e04569f76ab.
This reverts commit 7e87551c3775d26e20b06a4032a00053db6452cc.
This reverts commit 921274d2b8966641a00c0a767ae40ba7187bdffc.
This reverts commit fc1f528e5e3ee45ab17ae8dcfad6a6422ff2002d.
This reverts commit 0961715cdafb5d39124667ff94f3b56453ce71f1.
This reverts commit a93f264526e1cdade71d887800c1c448c411bfdc.
This reverts commit 72dd94e1c6d29203b8f6473317f626e6d6d6fbdc.
This reverts commit 29b2dc89645e741f91cc920964432dccd2aaef14.
This reverts commit 05c7653bba7571852f5ce6fc0d220a1a829bc4c0.
This reverts commit 5190e5c260ee05e3f3c3d1168263a1a6637441d0.
This reverts commit 6b55bf228cb2da8705737d414f394950a92d8aae.
This reverts commit 184b4a12d3215d105720d005b31e365249e2eb21.
This reverts commit 4c31b7888a561e920fd3889ba8d99368f3c2d9e6.
This reverts commit d44e9680f080b4918cfed268b96f90ea35975617.
This reverts commit 4069a5c43f419d76e1254c8e49b4cad9968a408f.

show more ...


# ef7fbfd7 05-Jan-2023 Max Kellermann

Zend/zend_API: include cleanup


12345678910>>...29