summaryrefslogtreecommitdiff
path: root/UPGRADING.INTERNALS
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2020-03-31 12:17:32 +0200
committerNikita Popov <nikita.ppv@gmail.com>2020-03-31 14:37:49 +0200
commit8fd7f02ea4cd595a792ef37e558d357d97bceefa (patch)
treea4684263d41cf407f5cffb725fe319bbc05da75c /UPGRADING.INTERNALS
parent36935e42eac054a422b7edade69923db7727f268 (diff)
downloadphp-git-8fd7f02ea4cd595a792ef37e558d357d97bceefa.tar.gz
Make cast_object handler required
Avoid subtle differences in behavior depending on whether the handler is absent or returns FAILURE. If you previously set cast_object to NULL, create a handler that always returns FAILURE instead.
Diffstat (limited to 'UPGRADING.INTERNALS')
-rw-r--r--UPGRADING.INTERNALS4
1 files changed, 4 insertions, 0 deletions
diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS
index e7c3f5495b..599a024a4e 100644
--- a/UPGRADING.INTERNALS
+++ b/UPGRADING.INTERNALS
@@ -15,6 +15,7 @@ PHP 8.0 INTERNALS UPGRADE NOTES
l. Some VM instructions switched to IS_TMP_VAR result instead of IS_VAR
m. All internal functions must have arginfo
n. zend_hash_sort compare function signature change
+ o. cast_object() object handler is now required
2. Build system changes
a. Abstract
@@ -110,6 +111,9 @@ PHP 8.0 INTERNALS UPGRADE NOTES
Previously compare_func_t was used, which accepted void pointers.
+ o. The cast_object() handler is now required, i.e. must be non-null. You can
+ indicate that casting is not supported by always returning FAILURE.
+
========================
2. Build system changes
========================