Skip to content

php_stream_wrapper_log_error() number of args changed in PHP 8.6.0 #22958

Description

@Jan-E

Description

php_stream_wrapper_log_error() used to take only 3 arguments:

php-src/main/php_streams.h

Lines 644 to 645 in ce4adcc

/* pushes an error message onto the stack for a wrapper instance */
PHPAPI void php_stream_wrapper_log_error(const php_stream_wrapper *wrapper, int options, const char *fmt, ...) PHP_ATTRIBUTE_FORMAT(printf, 3, 4);

After the addition of the new streams errors API php_stream_wrapper_log_error was marked as

/* Legacy wrapper error log functions */

/* Legacy wrapper error log functions */
PHPAPI void php_stream_wrapper_log_error(const php_stream_wrapper *wrapper,
php_stream_context *context, int options, int severity, bool terminating,
zend_enum_StreamErrorCode code, const char *fmt, ...)
ZEND_ATTRIBUTE_FORMAT(printf, 7, 8);

The number of required args changed from 3 to 7.
@bukka This backwards incompatible change deserves a solution or a description in UPGRADING.INTERNALS, IMHO.

PHP Version

PHP 8.6.0 Alpha 1

Operating System

N/A

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions