diff --git a/Zend/zend_API.h b/Zend/zend_API.h index c2706884d83..9ed1a3fbabd 100644 --- a/Zend/zend_API.h +++ b/Zend/zend_API.h @@ -131,8 +131,8 @@ typedef struct _zend_fcall_info_cache { { #name, ZEND_TYPE_INIT_MASK(type_mask | _ZEND_ARG_INFO_FLAGS(pass_by_ref, 0, 0)), default_value }, #define ZEND_ARG_OBJ_TYPE_MASK(pass_by_ref, name, class_name, type_mask, default_value) \ { #name, ZEND_TYPE_INIT_CLASS_CONST_MASK(#class_name, type_mask | _ZEND_ARG_INFO_FLAGS(pass_by_ref, 0, 0)), default_value }, -#define ZEND_ARG_VARIADIC_OBJ_TYPE_MASK(pass_by_ref, name, class_name, type_mask, default_value) \ - { #name, ZEND_TYPE_INIT_CLASS_CONST_MASK(#class_name, type_mask | _ZEND_ARG_INFO_FLAGS(pass_by_ref, 1, 0)), default_value }, +#define ZEND_ARG_VARIADIC_OBJ_TYPE_MASK(pass_by_ref, name, class_name, type_mask) \ + { #name, ZEND_TYPE_INIT_CLASS_CONST_MASK(#class_name, type_mask | _ZEND_ARG_INFO_FLAGS(pass_by_ref, 1, 0)), NULL }, /* Arginfo structures with object type information */ #define ZEND_ARG_OBJ_INFO(pass_by_ref, name, class_name, allow_null) \ diff --git a/build/gen_stub.php b/build/gen_stub.php index 348cc9e82d2..2f09202c4f2 100755 --- a/build/gen_stub.php +++ b/build/gen_stub.php @@ -2735,10 +2735,10 @@ function funcInfoToCode(FuncInfo $funcInfo): string { $arginfoType = $argType->toArginfoType(); if ($arginfoType->hasClassType()) { $code .= sprintf( - "\tZEND_%s_OBJ_TYPE_MASK(%s, %s, %s, %s, %s)\n", + "\tZEND_%s_OBJ_TYPE_MASK(%s, %s, %s, %s%s)\n", $argKind, $argInfo->getSendByString(), $argInfo->name, $arginfoType->toClassTypeString(), $arginfoType->toTypeMask(), - $argInfo->getDefaultValueAsArginfoString() + !$argInfo->isVariadic ? ", " . $argInfo->getDefaultValueAsArginfoString() : "" ); } else { $code .= sprintf(