* Zend: always populate error pointer on failure
Most of the code base expects an error to be set if a char* is provided, as this used to be always the case. It no longer was the case since the partially supported callables were deprecates as the deprecation could be promoted to an exception in which case we skipped allocating a char*.
The simple fix, allocate a char* even in case of an exception so callers don't need to check if it still NULL. This fixes some error messages at the same time.
* tree: simplify error handling for failed zend_is_callable() calls
* docs: clarify docs for zend_is_callable()
---------
Co-authored-by: Arnaud Le Blanc <365207+arnaud-lb@users.noreply.github.com>
Add directories for tests relating to
- `break` statements
- functions with by-ref returns
- `class_exists()`
- dynamic properties
- error handlers
- error suppression with `@`
- `get_object_vars()`
- `highlight_string()` and `highlight_file()`
- interfaces
- `is_callable()`
- iterators
- shutdown functions
- streams
As well as organizing a couple of tests into existing sub directories along the
way
Work towards GH-15631