Commit 1cb9d87ee52 for php
commit 1cb9d87ee529a958ca56032dbc84aec1685381ed
Author: Gina Peter Banyard <girgias@php.net>
Date: Fri Oct 23 19:54:01 2026 +0100
intl: use C++ linkage instead of C linkage when easily possible
intl: use C++ linkage for BreakIterator PHP functions/methods
intl: use C++ linkage for common code
intl: use C++ linkage for Spoofchecker PHP methods
intl: use C++ linkage for IntlNumberRangeFormatter PHP methods
intl: use C++ linkage for IntlNumberFormatter PHP methods
intl: No need to extern C the arginfo header for IntlListFormatter
intl: use C++ linkage for resourcebundle_get_iterator
Closes GH-24625
diff --git a/ext/intl/breakiterator/breakiterator_class.cpp b/ext/intl/breakiterator/breakiterator_class.cpp
index c9f2a53b58d..5b63580e6ad 100644
--- a/ext/intl/breakiterator/breakiterator_class.cpp
+++ b/ext/intl/breakiterator/breakiterator_class.cpp
@@ -26,9 +26,7 @@
#define USE_BREAKITERATOR_POINTER 1
#include "breakiterator_class.h"
-BEGIN_EXTERN_C()
#include "breakiterator_arginfo.h"
-END_EXTERN_C()
#include <zend_exceptions.h>
#include <zend_interfaces.h>
#include <assert.h>
@@ -53,7 +51,7 @@ static void breakiterator_object_construct(zval *object,
bio->biter = biter;
}
-U_CFUNC void breakiterator_object_create(zval *object,
+void breakiterator_object_create(zval *object,
BreakIterator *biter, int brand_new)
{
UClassID classId = biter->getDynamicClassID();
diff --git a/ext/intl/breakiterator/breakiterator_class.h b/ext/intl/breakiterator/breakiterator_class.h
index 9038aa3e7f7..2cee8e3db70 100644
--- a/ext/intl/breakiterator/breakiterator_class.h
+++ b/ext/intl/breakiterator/breakiterator_class.h
@@ -62,9 +62,9 @@ typedef struct {
RETURN_THROWS(); \
}
-BEGIN_EXTERN_C()
void breakiterator_object_create(zval *object, BreakIterator *break_iter, int brand_new);
+BEGIN_EXTERN_C()
void breakiterator_register_BreakIterator_class(void);
extern zend_class_entry *BreakIterator_ce_ptr,
diff --git a/ext/intl/breakiterator/breakiterator_iterators.cpp b/ext/intl/breakiterator/breakiterator_iterators.cpp
index 8b1c136a064..4c62522c95a 100644
--- a/ext/intl/breakiterator/breakiterator_iterators.cpp
+++ b/ext/intl/breakiterator/breakiterator_iterators.cpp
@@ -23,9 +23,7 @@
#define USE_BREAKITERATOR_POINTER
#include "breakiterator_class.h"
-BEGIN_EXTERN_C()
#include "breakiterator_iterators_arginfo.h"
-END_EXTERN_C()
#include "../intl_convert.h"
#include "../locale/locale.h"
#include <zend_exceptions.h>
@@ -253,7 +251,7 @@ void IntlIterator_from_BreakIterator_parts(zval *break_iter_zv,
((zoi_break_iter_parts*)ii->iterator)->index_right = 0;
}
-U_CFUNC PHP_METHOD(IntlPartsIterator, getBreakIterator)
+PHP_METHOD(IntlPartsIterator, getBreakIterator)
{
INTLITERATOR_METHOD_INIT_VARS;
@@ -264,7 +262,7 @@ U_CFUNC PHP_METHOD(IntlPartsIterator, getBreakIterator)
RETURN_COPY_DEREF(&ii->iterator->data);
}
-U_CFUNC PHP_METHOD(IntlPartsIterator, getRuleStatus)
+PHP_METHOD(IntlPartsIterator, getRuleStatus)
{
INTLITERATOR_METHOD_INIT_VARS;
diff --git a/ext/intl/breakiterator/breakiterator_iterators.h b/ext/intl/breakiterator/breakiterator_iterators.h
index bca19cc2b0b..b92ea22f7f3 100644
--- a/ext/intl/breakiterator/breakiterator_iterators.h
+++ b/ext/intl/breakiterator/breakiterator_iterators.h
@@ -16,7 +16,6 @@
#include <unicode/umachine.h>
-#include <math.h>
#include <php.h>
typedef enum {
diff --git a/ext/intl/breakiterator/breakiterator_methods.cpp b/ext/intl/breakiterator/breakiterator_methods.cpp
index 05d8c659bf2..13f4fddf362 100644
--- a/ext/intl/breakiterator/breakiterator_methods.cpp
+++ b/ext/intl/breakiterator/breakiterator_methods.cpp
@@ -32,7 +32,7 @@ using PHP::CodePointBreakIterator;
using icu::BreakIterator;
using icu::Locale;
-U_CFUNC PHP_METHOD(IntlBreakIterator, __construct)
+PHP_METHOD(IntlBreakIterator, __construct)
{
zend_throw_exception( NULL,
"An object of this type cannot be created with the new operator",
@@ -68,42 +68,42 @@ static void _breakiter_factory(
breakiterator_object_create(return_value, biter, 1);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, createWordInstance)
+PHP_METHOD(IntlBreakIterator, createWordInstance)
{
_breakiter_factory(
&BreakIterator::createWordInstance,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, createLineInstance)
+PHP_METHOD(IntlBreakIterator, createLineInstance)
{
_breakiter_factory(
&BreakIterator::createLineInstance,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, createCharacterInstance)
+PHP_METHOD(IntlBreakIterator, createCharacterInstance)
{
_breakiter_factory(
&BreakIterator::createCharacterInstance,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, createSentenceInstance)
+PHP_METHOD(IntlBreakIterator, createSentenceInstance)
{
_breakiter_factory(
&BreakIterator::createSentenceInstance,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, createTitleInstance)
+PHP_METHOD(IntlBreakIterator, createTitleInstance)
{
_breakiter_factory(
&BreakIterator::createTitleInstance,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, createCodePointInstance)
+PHP_METHOD(IntlBreakIterator, createCodePointInstance)
{
intl_error_reset(NULL);
@@ -113,7 +113,7 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, createCodePointInstance)
breakiterator_object_create(return_value, cpbi, 1);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, getText)
+PHP_METHOD(IntlBreakIterator, getText)
{
BREAKITER_METHOD_INIT_VARS;
object = ZEND_THIS;
@@ -129,7 +129,7 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, getText)
}
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, setText)
+PHP_METHOD(IntlBreakIterator, setText)
{
UText *ut = NULL;
zend_string *text;
@@ -198,25 +198,25 @@ static void _breakiter_int32_ret_int32(
RETURN_LONG((zend_long)res);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, first)
+PHP_METHOD(IntlBreakIterator, first)
{
_breakiter_no_args_ret_int32(&BreakIterator::first,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, last)
+PHP_METHOD(IntlBreakIterator, last)
{
_breakiter_no_args_ret_int32(&BreakIterator::last,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, previous)
+PHP_METHOD(IntlBreakIterator, previous)
{
_breakiter_no_args_ret_int32(&BreakIterator::previous,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, next)
+PHP_METHOD(IntlBreakIterator, next)
{
zval *arg = NULL;
@@ -235,7 +235,7 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, next)
}
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, current)
+PHP_METHOD(IntlBreakIterator, current)
{
BREAKITER_METHOD_INIT_VARS;
object = ZEND_THIS;
@@ -249,21 +249,21 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, current)
RETURN_LONG((zend_long)res);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, following)
+PHP_METHOD(IntlBreakIterator, following)
{
_breakiter_int32_ret_int32(
&BreakIterator::following,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, preceding)
+PHP_METHOD(IntlBreakIterator, preceding)
{
_breakiter_int32_ret_int32(
&BreakIterator::preceding,
INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, isBoundary)
+PHP_METHOD(IntlBreakIterator, isBoundary)
{
zend_long offset;
BREAKITER_METHOD_INIT_VARS;
@@ -285,7 +285,7 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, isBoundary)
RETURN_BOOL((zend_long)res);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, getLocale)
+PHP_METHOD(IntlBreakIterator, getLocale)
{
zend_long locale_type;
BREAKITER_METHOD_INIT_VARS;
@@ -309,7 +309,7 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, getLocale)
RETURN_STRING(locale.getName());
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, getPartsIterator)
+PHP_METHOD(IntlBreakIterator, getPartsIterator)
{
zend_long key_type = 0;
BREAKITER_METHOD_INIT_VARS;
@@ -334,7 +334,7 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, getPartsIterator)
object, return_value, (parts_iter_key_type)key_type);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, getErrorCode)
+PHP_METHOD(IntlBreakIterator, getErrorCode)
{
BREAKITER_METHOD_INIT_VARS;
object = ZEND_THIS;
@@ -346,7 +346,7 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, getErrorCode)
RETURN_LONG((zend_long)BREAKITER_ERROR_CODE(bio));
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, getErrorMessage)
+PHP_METHOD(IntlBreakIterator, getErrorMessage)
{
zend_string* message = NULL;
BREAKITER_METHOD_INIT_VARS;
@@ -362,7 +362,7 @@ U_CFUNC PHP_METHOD(IntlBreakIterator, getErrorMessage)
RETURN_STR(message);
}
-U_CFUNC PHP_METHOD(IntlBreakIterator, getIterator)
+PHP_METHOD(IntlBreakIterator, getIterator)
{
ZEND_PARSE_PARAMETERS_NONE();
diff --git a/ext/intl/breakiterator/codepointiterator_methods.cpp b/ext/intl/breakiterator/codepointiterator_methods.cpp
index 934e10c2cbf..810274a69cf 100644
--- a/ext/intl/breakiterator/codepointiterator_methods.cpp
+++ b/ext/intl/breakiterator/codepointiterator_methods.cpp
@@ -23,7 +23,7 @@ static inline CodePointBreakIterator *fetch_cpbi(BreakIterator_object *bio) {
return (CodePointBreakIterator*)bio->biter;
}
-U_CFUNC PHP_METHOD(IntlCodePointBreakIterator, getLastCodePoint)
+PHP_METHOD(IntlCodePointBreakIterator, getLastCodePoint)
{
BREAKITER_METHOD_INIT_VARS;
object = ZEND_THIS;
diff --git a/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp b/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
index 5a978a97f43..f03f027e281 100644
--- a/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
+++ b/ext/intl/breakiterator/rulebasedbreakiterator_methods.cpp
@@ -30,7 +30,7 @@ static inline RuleBasedBreakIterator *fetch_rbbi(BreakIterator_object *bio) {
return (RuleBasedBreakIterator*)bio->biter;
}
-U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, __construct)
+PHP_METHOD(IntlRuleBasedBreakIterator, __construct)
{
zend_string *rules;
bool compiled = false;
@@ -90,7 +90,7 @@ U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, __construct)
}
}
-U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getRules)
+PHP_METHOD(IntlRuleBasedBreakIterator, getRules)
{
BREAKITER_METHOD_INIT_VARS;
object = ZEND_THIS;
@@ -112,7 +112,7 @@ U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getRules)
RETVAL_STR(u8str);
}
-U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getRuleStatus)
+PHP_METHOD(IntlRuleBasedBreakIterator, getRuleStatus)
{
BREAKITER_METHOD_INIT_VARS;
object = ZEND_THIS;
@@ -124,7 +124,7 @@ U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getRuleStatus)
RETURN_LONG(fetch_rbbi(bio)->getRuleStatus());
}
-U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getRuleStatusVec)
+PHP_METHOD(IntlRuleBasedBreakIterator, getRuleStatusVec)
{
BREAKITER_METHOD_INIT_VARS;
object = ZEND_THIS;
@@ -154,7 +154,7 @@ U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getRuleStatusVec)
}
}
-U_CFUNC PHP_METHOD(IntlRuleBasedBreakIterator, getBinaryRules)
+PHP_METHOD(IntlRuleBasedBreakIterator, getBinaryRules)
{
BREAKITER_METHOD_INIT_VARS;
object = ZEND_THIS;
diff --git a/ext/intl/common/common_date.cpp b/ext/intl/common/common_date.cpp
index db800cc01cc..50b4b065efa 100644
--- a/ext/intl/common/common_date.cpp
+++ b/ext/intl/common/common_date.cpp
@@ -19,6 +19,7 @@
#include "../php_intl.h"
#define USE_CALENDAR_POINTER 1
#include "../calendar/calendar_class.h"
+#include "common_date.h"
U_CDECL_BEGIN
#include <ext/date/php_date.h>
@@ -31,7 +32,7 @@ using icu::UnicodeString;
/* {{{ timezone_convert_datetimezone
* The timezone in DateTime and DateTimeZone is not unified. */
-U_CFUNC TimeZone *timezone_convert_datetimezone(
+TimeZone *timezone_convert_datetimezone(
int type, void *object, bool is_datetime,
intl_error *outside_error)
{
@@ -89,7 +90,7 @@ U_CFUNC TimeZone *timezone_convert_datetimezone(
}
/* }}} */
-U_CFUNC zend_result intl_datetime_decompose(zend_object *obj, double *millis, TimeZone **tz,
+zend_result intl_datetime_decompose(zend_object *obj, double *millis, TimeZone **tz,
intl_error *err)
{
char *message;
@@ -153,7 +154,7 @@ U_CFUNC zend_result intl_datetime_decompose(zend_object *obj, double *millis, Ti
return SUCCESS;
}
-U_CFUNC double intl_zval_to_millis(zval *z, intl_error *err)
+double intl_zval_to_millis(zval *z, intl_error *err)
{
double rv = ZEND_NAN;
zend_long lv;
diff --git a/ext/intl/common/common_date.h b/ext/intl/common/common_date.h
index 42936875e36..e8f8946e0ac 100644
--- a/ext/intl/common/common_date.h
+++ b/ext/intl/common/common_date.h
@@ -29,11 +29,11 @@
using icu::TimeZone;
-U_CFUNC TimeZone *timezone_convert_datetimezone(int type, void *object, bool is_datetime, intl_error *outside_error);
-U_CFUNC zend_result intl_datetime_decompose(zend_object *obj, double *millis, TimeZone **tz, intl_error *err);
+TimeZone *timezone_convert_datetimezone(int type, void *object, bool is_datetime, intl_error *outside_error);
+zend_result intl_datetime_decompose(zend_object *obj, double *millis, TimeZone **tz, intl_error *err);
#endif
-U_CFUNC double intl_zval_to_millis(zval *z, intl_error *err);
+double intl_zval_to_millis(zval *z, intl_error *err);
#endif /* COMMON_DATE_H */
diff --git a/ext/intl/common/common_enum.cpp b/ext/intl/common/common_enum.cpp
index b9549194507..7bc5fca1f6a 100644
--- a/ext/intl/common/common_enum.cpp
+++ b/ext/intl/common/common_enum.cpp
@@ -37,17 +37,17 @@ void zoi_with_current_dtor(zend_object_iterator *iter)
ZVAL_UNDEF(&zoiwc->wrapping_obj);
}
-U_CFUNC zend_result zoi_with_current_valid(zend_object_iterator *iter)
+zend_result zoi_with_current_valid(zend_object_iterator *iter)
{
return Z_ISUNDEF(((zoi_with_current*)iter)->current)? FAILURE : SUCCESS;
}
-U_CFUNC zval *zoi_with_current_get_current_data(zend_object_iterator *iter)
+zval *zoi_with_current_get_current_data(zend_object_iterator *iter)
{
return &((zoi_with_current*)iter)->current;
}
-U_CFUNC void zoi_with_current_invalidate_current(zend_object_iterator *iter)
+void zoi_with_current_invalidate_current(zend_object_iterator *iter)
{
zoi_with_current *zoi_iter = (zoi_with_current*)iter;
if (!Z_ISUNDEF(zoi_iter->current)) {
@@ -124,7 +124,7 @@ static const zend_object_iterator_funcs string_enum_object_iterator_funcs = {
zoi_with_current_get_gc,
};
-U_CFUNC void IntlIterator_from_StringEnumeration(StringEnumeration *se, zval *object)
+void IntlIterator_from_StringEnumeration(StringEnumeration *se, zval *object)
{
IntlIterator_object *ii;
object_init_ex(object, IntlIterator_ce_ptr);
diff --git a/ext/intl/common/common_enum.h b/ext/intl/common/common_enum.h
index 48a11bfbbea..aa7931c74f6 100644
--- a/ext/intl/common/common_enum.h
+++ b/ext/intl/common/common_enum.h
@@ -59,15 +59,15 @@ typedef struct {
extern zend_class_entry *IntlIterator_ce_ptr;
extern zend_object_handlers IntlIterator_handlers;
-U_CFUNC void zoi_with_current_dtor(zend_object_iterator *iter);
-U_CFUNC zend_result zoi_with_current_valid(zend_object_iterator *iter);
-U_CFUNC zval *zoi_with_current_get_current_data(zend_object_iterator *iter);
-U_CFUNC void zoi_with_current_invalidate_current(zend_object_iterator *iter);
-U_CFUNC HashTable *zoi_with_current_get_gc(zend_object_iterator *iter, zval **table, int *n);
+void zoi_with_current_dtor(zend_object_iterator *iter);
+zend_result zoi_with_current_valid(zend_object_iterator *iter);
+zval *zoi_with_current_get_current_data(zend_object_iterator *iter);
+void zoi_with_current_invalidate_current(zend_object_iterator *iter);
+HashTable *zoi_with_current_get_gc(zend_object_iterator *iter, zval **table, int *n);
#ifdef __cplusplus
using icu::StringEnumeration;
-U_CFUNC void IntlIterator_from_StringEnumeration(StringEnumeration *se, zval *object);
+void IntlIterator_from_StringEnumeration(StringEnumeration *se, zval *object);
#endif
U_CFUNC void intl_register_common_symbols(int module_number);
diff --git a/ext/intl/listformatter/listformatter_class.cpp b/ext/intl/listformatter/listformatter_class.cpp
index 10ec6053dc8..89ebe868559 100644
--- a/ext/intl/listformatter/listformatter_class.cpp
+++ b/ext/intl/listformatter/listformatter_class.cpp
@@ -20,9 +20,7 @@
#include "php_intl.h"
#include "listformatter_class.h"
-BEGIN_EXTERN_C()
#include "listformatter_arginfo.h"
-END_EXTERN_C()
#include <memory>
diff --git a/ext/intl/numberformatter/numberformatter_class.cpp b/ext/intl/numberformatter/numberformatter_class.cpp
index cc98c075f56..16f6e7492cc 100644
--- a/ext/intl/numberformatter/numberformatter_class.cpp
+++ b/ext/intl/numberformatter/numberformatter_class.cpp
@@ -23,9 +23,7 @@
#include "../intl_convertcpp.h"
#include "../php_intl.h"
-BEGIN_EXTERN_C()
#include "numberformatter_arginfo.h"
-END_EXTERN_C()
#include "numberformatter_class.h"
using icu::number::NumberFormatter;
@@ -60,14 +58,14 @@ static zend_object *numberformatter_create_object(zend_class_entry *ce)
return &nfo->zo;
}
-U_CFUNC PHP_METHOD(IntlNumberFormatter, __construct)
+PHP_METHOD(IntlNumberFormatter, __construct)
{
ZEND_PARSE_PARAMETERS_NONE();
zend_throw_error(nullptr, "Cannot directly construct %s, use createFromSkeleton method instead", ZSTR_VAL(Z_OBJCE_P(ZEND_THIS)->name));
}
-U_CFUNC PHP_METHOD(IntlNumberFormatter, createFromSkeleton)
+PHP_METHOD(IntlNumberFormatter, createFromSkeleton)
{
char *skeleton, *locale;
size_t skeleton_len, locale_len;
@@ -114,7 +112,7 @@ U_CFUNC PHP_METHOD(IntlNumberFormatter, createFromSkeleton)
NUMBERFORMATTER_OBJECT(Z_INTL_INTLNUMBERFORMATTER_P(return_value)) = new LocalizedNumberFormatter(nf.locale(icu::Locale::createCanonical(locale)));
}
-U_CFUNC PHP_METHOD(IntlNumberFormatter, format)
+PHP_METHOD(IntlNumberFormatter, format)
{
zval *value;
@@ -163,14 +161,14 @@ U_CFUNC PHP_METHOD(IntlNumberFormatter, format)
RETVAL_STR(ret);
}
-U_CFUNC PHP_METHOD(IntlNumberFormatter, getErrorCode)
+PHP_METHOD(IntlNumberFormatter, getErrorCode)
{
ZEND_PARSE_PARAMETERS_NONE();
RETURN_LONG(INTL_DATA_ERROR_CODE(Z_INTL_INTLNUMBERFORMATTER_P(ZEND_THIS)));
}
-U_CFUNC PHP_METHOD(IntlNumberFormatter, getErrorMessage)
+PHP_METHOD(IntlNumberFormatter, getErrorMessage)
{
ZEND_PARSE_PARAMETERS_NONE();
diff --git a/ext/intl/rangeformatter/rangeformatter_class.cpp b/ext/intl/rangeformatter/rangeformatter_class.cpp
index 1291d17b37b..5b07cbbdee7 100644
--- a/ext/intl/rangeformatter/rangeformatter_class.cpp
+++ b/ext/intl/rangeformatter/rangeformatter_class.cpp
@@ -27,9 +27,7 @@
#include "../php_intl.h"
#include "../intl_data.h"
-BEGIN_EXTERN_C()
#include "rangeformatter_arginfo.h"
-END_EXTERN_C()
#include "rangeformatter_class.h"
@@ -73,13 +71,13 @@ static icu::Formattable rangeformatter_create_formattable(const zval *number)
return formattable;
}
-U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, __construct)
+PHP_METHOD(IntlNumberRangeFormatter, __construct)
{
ZEND_PARSE_PARAMETERS_NONE();
zend_throw_error(NULL, "Cannot directly construct %s, use createFromSkeleton method instead", ZSTR_VAL(Z_OBJCE_P(ZEND_THIS)->name));
}
-U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, createFromSkeleton)
+PHP_METHOD(IntlNumberRangeFormatter, createFromSkeleton)
{
char* skeleton;
char* locale;
@@ -157,7 +155,7 @@ U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, createFromSkeleton)
RETURN_OBJ(obj);
}
-U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, format)
+PHP_METHOD(IntlNumberRangeFormatter, format)
{
zval *start;
zval *end;
@@ -212,7 +210,7 @@ U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, format)
RETVAL_NEW_STR(ret);
}
-U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, getErrorCode)
+PHP_METHOD(IntlNumberRangeFormatter, getErrorCode)
{
ZEND_PARSE_PARAMETERS_NONE();
@@ -221,7 +219,7 @@ U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, getErrorCode)
RETURN_LONG(intl_error_get_code(&obj->nrf_data.error));
}
-U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, getErrorMessage)
+PHP_METHOD(IntlNumberRangeFormatter, getErrorMessage)
{
ZEND_PARSE_PARAMETERS_NONE();
@@ -230,7 +228,7 @@ U_CFUNC PHP_METHOD(IntlNumberRangeFormatter, getErrorMessage)
RETURN_STR(intl_error_get_message(&obj->nrf_data.error));
}
-void IntlNumberRangeFormatter_object_free(zend_object *object)
+static void IntlNumberRangeFormatter_object_free(zend_object *object)
{
IntlNumberRangeFormatter_object* nfo = php_intl_numberrangeformatter_fetch_object(object);
diff --git a/ext/intl/resourcebundle/resourcebundle_iterator.cpp b/ext/intl/resourcebundle/resourcebundle_iterator.cpp
index 1ff2f666766..73f7ff7365d 100644
--- a/ext/intl/resourcebundle/resourcebundle_iterator.cpp
+++ b/ext/intl/resourcebundle/resourcebundle_iterator.cpp
@@ -144,8 +144,7 @@ static const zend_object_iterator_funcs resourcebundle_iterator_funcs = {
};
/* }}} */
-/* {{{ resourcebundle_get_iterator */
-U_CFUNC zend_object_iterator *resourcebundle_get_iterator( zend_class_entry *ce, zval *object, int byref )
+zend_object_iterator *resourcebundle_get_iterator( zend_class_entry *ce, zval *object, int byref )
{
if (byref) {
zend_throw_error(NULL, "An iterator cannot be used with foreach by reference");
@@ -174,4 +173,3 @@ U_CFUNC zend_object_iterator *resourcebundle_get_iterator( zend_class_entry *ce,
return (zend_object_iterator *) iterator;
}
-/* }}} */
diff --git a/ext/intl/resourcebundle/resourcebundle_iterator.h b/ext/intl/resourcebundle/resourcebundle_iterator.h
index 3eab1f09981..2a155fc8c8d 100644
--- a/ext/intl/resourcebundle/resourcebundle_iterator.h
+++ b/ext/intl/resourcebundle/resourcebundle_iterator.h
@@ -29,6 +29,6 @@ typedef struct {
zend_long i;
} ResourceBundle_iterator;
-U_CFUNC zend_object_iterator *resourcebundle_get_iterator( zend_class_entry *ce, zval *object, int byref );
+zend_object_iterator *resourcebundle_get_iterator( zend_class_entry *ce, zval *object, int byref );
#endif // #ifndef RESOURCEBUNDLE_ITERATOR_H
diff --git a/ext/intl/spoofchecker/spoofchecker_class.cpp b/ext/intl/spoofchecker/spoofchecker_class.cpp
index 317b844e993..55d39ecfa2a 100644
--- a/ext/intl/spoofchecker/spoofchecker_class.cpp
+++ b/ext/intl/spoofchecker/spoofchecker_class.cpp
@@ -18,9 +18,7 @@
#include <unicode/uspoof.h>
-BEGIN_EXTERN_C()
#include "spoofchecker_arginfo.h"
-END_EXTERN_C()
zend_class_entry *Spoofchecker_ce_ptr = NULL;
static zend_object_handlers Spoofchecker_handlers;
diff --git a/ext/intl/spoofchecker/spoofchecker_create.cpp b/ext/intl/spoofchecker/spoofchecker_create.cpp
index 9dbd2a6eac0..4c15f1428db 100644
--- a/ext/intl/spoofchecker/spoofchecker_create.cpp
+++ b/ext/intl/spoofchecker/spoofchecker_create.cpp
@@ -26,7 +26,7 @@
#include "spoofchecker_class.h"
/* {{{ Spoofchecker object constructor. */
-U_CFUNC PHP_METHOD(Spoofchecker, __construct)
+PHP_METHOD(Spoofchecker, __construct)
{
SPOOFCHECKER_METHOD_INIT_VARS;
diff --git a/ext/intl/spoofchecker/spoofchecker_main.cpp b/ext/intl/spoofchecker/spoofchecker_main.cpp
index 92c7bb44de5..8caa5e345aa 100644
--- a/ext/intl/spoofchecker/spoofchecker_main.cpp
+++ b/ext/intl/spoofchecker/spoofchecker_main.cpp
@@ -26,7 +26,7 @@
#include "spoofchecker_class.h"
/* {{{ Checks if a given text contains any suspicious characters */
-U_CFUNC PHP_METHOD(Spoofchecker, isSuspicious)
+PHP_METHOD(Spoofchecker, isSuspicious)
{
int32_t ret, errmask;
zend_string *text;
@@ -61,7 +61,7 @@ U_CFUNC PHP_METHOD(Spoofchecker, isSuspicious)
/* }}} */
/* {{{ Checks if a given text contains any confusable characters */
-U_CFUNC PHP_METHOD(Spoofchecker, areConfusable)
+PHP_METHOD(Spoofchecker, areConfusable)
{
int ret;
zend_string *s1, *s2;
@@ -95,7 +95,7 @@ U_CFUNC PHP_METHOD(Spoofchecker, areConfusable)
/* }}} */
/* {{{ Locales to use when running checks */
-U_CFUNC PHP_METHOD(Spoofchecker, setAllowedLocales)
+PHP_METHOD(Spoofchecker, setAllowedLocales)
{
zend_string *locales;
SPOOFCHECKER_METHOD_INIT_VARS;
@@ -117,7 +117,7 @@ U_CFUNC PHP_METHOD(Spoofchecker, setAllowedLocales)
/* }}} */
/* {{{ Set the checks to run */
-U_CFUNC PHP_METHOD(Spoofchecker, setChecks)
+PHP_METHOD(Spoofchecker, setChecks)
{
zend_long checks;
SPOOFCHECKER_METHOD_INIT_VARS;
@@ -139,7 +139,7 @@ U_CFUNC PHP_METHOD(Spoofchecker, setChecks)
/* TODO Document this method on PHP.net */
/* {{{ Set the loosest restriction level allowed for strings. */
-U_CFUNC PHP_METHOD(Spoofchecker, setRestrictionLevel)
+PHP_METHOD(Spoofchecker, setRestrictionLevel)
{
zend_long level;
SPOOFCHECKER_METHOD_INIT_VARS;
@@ -166,7 +166,7 @@ U_CFUNC PHP_METHOD(Spoofchecker, setRestrictionLevel)
}
/* }}} */
-U_CFUNC PHP_METHOD(Spoofchecker, setAllowedChars)
+PHP_METHOD(Spoofchecker, setAllowedChars)
{
zend_string *pattern;
UChar *upattern = NULL;
@@ -272,7 +272,7 @@ static zend_string *spoofchecker_skeleton(Spoofchecker_object *co, zend_string *
/* }}} */
/* {{{ Get the confusable skeleton for an identifier */
-U_CFUNC PHP_METHOD(Spoofchecker, getSkeleton)
+PHP_METHOD(Spoofchecker, getSkeleton)
{
zend_string *string;
SPOOFCHECKER_METHOD_INIT_VARS;
@@ -298,7 +298,7 @@ U_CFUNC PHP_METHOD(Spoofchecker, getSkeleton)
#if U_ICU_VERSION_MAJOR_NUM >= 74
/* {{{ Get the confusable skeleton for an identifier in a given text direction */
-U_CFUNC PHP_METHOD(Spoofchecker, getBidiSkeleton)
+PHP_METHOD(Spoofchecker, getBidiSkeleton)
{
zend_long direction;
zend_string *string;
@@ -329,7 +329,7 @@ U_CFUNC PHP_METHOD(Spoofchecker, getBidiSkeleton)
/* }}} */
/* {{{ Checks if a given text contains any confusable characters, for a given text direction */
-U_CFUNC PHP_METHOD(Spoofchecker, areBidiConfusable)
+PHP_METHOD(Spoofchecker, areBidiConfusable)
{
uint32_t ret = 0;
zend_long direction;