mirror of
https://github.com/php/php-src.git
synced 2024-11-23 18:04:36 +08:00
60 lines
1.7 KiB
Plaintext
60 lines
1.7 KiB
Plaintext
PHP 8.0 INTERNALS UPGRADE NOTES
|
|
|
|
1. Internal API changes
|
|
a. Object Handlers API
|
|
b. ZEND_OVERLOADED_FUNCTION and corresponding call_method() object handler
|
|
c. TSRM changes
|
|
|
|
2. Build system changes
|
|
a. Abstract
|
|
b. Unix build system changes
|
|
c. Windows build system changes
|
|
|
|
3. Module changes
|
|
|
|
========================
|
|
1. Internal API changes
|
|
========================
|
|
|
|
a. Object Handlers API and some related functions, e.g. zend_call_method() and
|
|
zend_objects_clone_obj() were changed to receive zend_object* instead of
|
|
zval* and zend_string* instead of zval* for property names.
|
|
|
|
b. ZEND_OVERLOADED_FUNCTION and corresponding call_method() object handler
|
|
were removed. ZEND_INTERNAL_FUNCTION with ZEND_ACC_CALL_VIA_HANDLER and
|
|
defined "handler" callback should be used instead. This "handler" callback
|
|
should also take care about function cleanup. See ext/zend_test/test.c
|
|
for example.
|
|
|
|
c. The following things have been removed from TSRM:
|
|
- TSRMLS_DC
|
|
- TSRMLS_D
|
|
- TSRMLS_CC
|
|
- TSRMLS_C
|
|
- TSRMLS_FETCH
|
|
- TSRMLS_FETCH_FROM_CTX
|
|
- TSRMLS_SET_CTX
|
|
- tsrm_new_interpreter_context
|
|
- tsrm_set_interpreter_context
|
|
- tsrm_free_interpreter_context
|
|
- support for GNUPTH, SGI ST, and BETHREADS
|
|
|
|
|
|
========================
|
|
2. Build system changes
|
|
========================
|
|
|
|
a. Abstract
|
|
|
|
b. Unix build system changes
|
|
|
|
1. --enable-maintainer-zts is renamed --enable-zts for parity with Windows
|
|
and as recognition that ZTS is not a "maintainer" or experimental feature.
|
|
|
|
c. Windows build system changes
|
|
|
|
========================
|
|
3. Module changes
|
|
========================
|
|
|