Zeev Suraski
a81202ac49
Adios, yearly copyright ranges
2019-01-30 11:48:28 +01:00
Dmitry Stogov
3575a2b8f9
Micro optimizations
2018-10-17 16:55:52 +03:00
Dmitry Stogov
689c6fb188
Replace ZEND_ACC_ANON_BOUND, ZEND_ACC_UNRESOLVED_PARENT and ZEND_ACC_UNRESOLVED_INTERFACES with single ZEND_ACC_LINKED.
2018-09-18 11:41:40 +03:00
Dmitry Stogov
8939c4d96b
Get rid of ZEND_ACC_CTOR, ZEND_ACC_DTOR and ZEND_ACC_IMPLEMENTED_ABSTRACT
2018-09-05 13:16:10 +03:00
Dmitry Stogov
d140df58e6
Keep information about unresolved interfaces in zend_class_entry->interface_names.
...
Move interface implementation code into ZEND_DECLARE_*CLASS opcodes.
Remove ZEND_ADD_INTERFACE and ZEND_VERIFY_ABSTRACT_CLASS opcodes.
2018-08-23 17:16:28 +03:00
Gabriel Caruso
84b195d9fc
Fix some misspellings
2018-08-12 16:15:45 +02:00
Dmitry Stogov
c42f0ba4f7
Removed useless IS_UNDEF checks
2018-07-31 12:23:46 +03:00
Peter Kokot
8d3f8ca12a
Remove unused Git attributes ident
...
The $Id$ keywords were used in Subversion where they can be substituted
with filename, last revision number change, last changed date, and last
user who changed it.
In Git this functionality is different and can be done with Git attribute
ident. These need to be defined manually for each file in the
.gitattributes file and are afterwards replaced with 40-character
hexadecimal blob object name which is based only on the particular file
contents.
This patch simplifies handling of $Id$ keywords by removing them since
they are not used anymore.
2018-07-25 00:53:25 +02:00
Dmitry Stogov
7d4e18b05d
Improved user iterator implementation to reduce zend_class_entry memory consumption and avoid race condition during resolving/caching of user iterator functions of internal classes in ZTS build.
2018-07-12 14:04:14 +03:00
Dmitry Stogov
49a4e69584
Fixed ability to call plain functions through zend_call_method()
2018-06-25 23:01:21 +03:00
Dmitry Stogov
eafa92ba9d
zend_fcall_info_cache.calling_scope is not used by zend_call_function() and doesn't have to be initialized.
...
It's used only as a result of zend_is_callable() in forward_static_call and spl_autoload.
2018-05-03 19:27:04 +03:00
Xinchen Hui
a6519d0514
year++
2018-01-02 12:57:58 +08:00
Dmitry Stogov
d9f5ea691f
zend_fcall_info_cache.initialized is removed (zend_fcall_info_cache is initialized if zend_fcall_info_cache.function_handler is set).
2017-12-27 15:15:03 +03:00
Dmitry Stogov
9e709e2fa0
Move constants into read-only data segment
2017-12-14 18:43:44 +03:00
Dmitry Stogov
1db8402208
Move zend_object_iterator_funcs structures into read-only data segment
2017-12-14 14:21:22 +03:00
Anatol Belski
bc5811f361
further sync for vim mode lines
2017-07-04 18:12:45 +02:00
Dmitry Stogov
27e7aea412
"Countable" interface is moved from SPL to Core
2017-05-25 12:47:43 +03:00
Sammy Kaye Powers
9e29f841ce
Update copyright headers to 2017
2017-01-02 09:30:12 -06:00
Nikita Popov
edde929351
Drop dead code in zend_call_method
...
As no_separation=1 is used this can not happen anymore.
2016-10-29 17:11:55 +02:00
Nikita Popov
ba55d0d06b
Merge branch 'PHP-7.1'
2016-10-29 14:39:07 +02:00
Nikita Popov
29bc6557c8
Optimize __get etc
...
Cheap 20% win by skipping the function name allocation if we don't
need it.
2016-10-29 14:38:34 +02:00
Nikita Popov
e0e5063173
Drop some pieces of commented-out code
2016-09-04 12:56:06 +02:00
Dmitry Stogov
f0a2e8eb13
Removed "zend_fcall_info.function_table". It was assigned in many places, but is never used.
2016-04-27 13:46:38 +03:00
Dmitry Stogov
c67c166f93
Removed zend_fcall_info.symbol_table
2016-03-02 17:50:55 +03:00
Xinchen Hui
97a9470d97
bump year which is missed in rev 49493a2
2016-01-02 17:56:11 +08:00
Aaron Piotrowski
5df893ce3c
Use NULL where possible for exception class
...
Matches usage of zend_throw_exception()/zend_throw_exception_ex().
2015-07-07 12:10:55 -05:00
Aaron Piotrowski
22c38b2ef5
Remove need to pass error level
2015-07-03 17:53:41 -05:00
Aaron Piotrowski
5a99c07ecc
Enable throwing custom exceptions from errors
2015-07-03 17:53:40 -05:00
Dmitry Stogov
7aa7627172
Use ZSTR_ API to access zend_string elements (this is just renaming without semantick changes).
2015-06-30 13:59:27 +03:00
Aaron Piotrowski
c5eb924e9e
Rename interface macros
...
Renamed REGISTER_INTERFACE (formerly
REGISTER_ITERATOR_INTERFACE) to
REGISTER_MAGIC_INTERFACE and renamed
REGISTER_ITERATOR_IMPLEMENT to
REGISTER_MAGIC_IMPLEMENT. Both have now been
moved to zend_interfaces.h.
2015-06-17 13:54:09 -05:00
Aaron Piotrowski
47d838a7ca
Move definition of Throwable to zend_exceptions.h/c
...
Also moved REGISTER_ITERATOR_INTERFACE macro to
zend_interfaces.h and renamed it to REGISTER_INTERFACE.
2015-06-15 18:07:27 -05:00
Aaron Piotrowski
4d590ac35a
Update exception error messages
2015-06-14 22:43:11 -05:00
Aaron Piotrowski
5c54bf015d
Throwable method signatures.
2015-05-18 14:29:51 -05:00
Aaron Piotrowski
d042d08807
Remodel exceptions based on Throwable interface
...
Added Throwable interface that exceptions must
implement in order to be thrown. BaseException
was removed, EngineException renamed to
Error, and TypeException and ParseException
renamed to TypeError and ParseError. Exception
and Error no longer extend a common base
class, rather they both implement the Throwable
interface.
2015-05-16 15:30:59 -05:00
Dmitry Stogov
49cf7c5d12
Don't propogate "fake" EX(called_scope) and EX(This) into each internal function.
...
They need quite seldom and it's cheaper to get them from corresponfing upper stack frame.
2015-04-23 12:16:37 +03:00
Dmitry Stogov
ad863c1740
Convert fatal errors into EngineException
2015-04-02 14:19:52 +03:00
Dmitry Stogov
ea09a9fa32
Convert fatal errors into EngineExceptions
...
Make zval_update_constant_ex(), zval_update_constant(), zend_update_class_constants() and zend_ast_evaluate() return SUCCESS or FAILURE.
2015-04-02 02:05:25 +03:00
Dmitry Stogov
acfc31c0f8
Use zend_error_noreturn() for fatal errors
2015-04-01 13:32:23 +03:00
Xinchen Hui
fc33f52d8c
bump year
2015-01-15 23:27:30 +08:00
Stanislav Malyshev
b7a7b1a624
trailing whitespace removal
2015-01-10 15:07:38 -08:00
Anatol Belski
bdeb220f48
first shot remove TSRMLS_* things
2014-12-13 23:06:14 +01:00
Dmitry Stogov
3893c1fc3d
Fixed compilation warnings
2014-12-12 21:57:34 +03:00
Anatol Belski
36b64b44d5
fix signature, zend_string is used for function name
2014-10-28 17:24:58 +01:00
Nikita Popov
ee5b30fa19
Remove support for classes without class entries
...
get_class_entry must be non-NULL and return non-NULL.
2014-10-09 13:58:14 +02:00
Anatol Belski
e591c78d09
revamp serialization to work with size_t for Serializable
2014-09-15 19:46:28 +02:00
Anatol Belski
0799459e76
fix signed/unsigned mismatch
2014-09-15 19:46:26 +02:00
Anatol Belski
6f9f0bf205
master renames phase 2
2014-08-25 19:28:33 +02:00
Anatol Belski
c3e3c98ec6
master renames phase 1
2014-08-25 19:24:55 +02:00
Anatol Belski
8ee2a4a9b5
first shot on merging the core fro the int64 branch
2014-08-16 11:16:11 +02:00
Dmitry Stogov
c4d99ec982
Removed EG(called_scope) and use corresponding value from EG(current_execute_data)
2014-07-03 02:34:43 +04:00