summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHartmut Holzgraefe <hholzgra@php.net>2010-10-14 21:33:10 +0000
committerHartmut Holzgraefe <hholzgra@php.net>2010-10-14 21:33:10 +0000
commitaaa2f1c30b3ba3da3e0030804054ee9c70e80bc7 (patch)
tree384852c9b955d1fea39e52a1a2fcf7cfd57e657f
parent738be1a0030ae67b19095391e0ee508284a5ab41 (diff)
downloadphp-git-aaa2f1c30b3ba3da3e0030804054ee9c70e80bc7.tar.gz
marked char pointer arguments as const in lots of
places where strings pointed to are not modified to prevent compiler warnings about discarded qualifiers ...
-rw-r--r--Zend/zend.h2
-rw-r--r--Zend/zend_API.c29
-rw-r--r--Zend/zend_API.h12
-rw-r--r--Zend/zend_builtin_functions.c4
-rw-r--r--Zend/zend_constants.c6
-rw-r--r--Zend/zend_execute.c2
-rw-r--r--Zend/zend_ini.c8
-rw-r--r--Zend/zend_list.c6
-rw-r--r--Zend/zend_list.h8
-rw-r--r--Zend/zend_modules.h2
-rw-r--r--Zend/zend_opcode.c2
-rw-r--r--Zend/zend_operators.h14
-rw-r--r--Zend/zend_stream.c2
-rw-r--r--Zend/zend_string.c10
-rw-r--r--Zend/zend_string.h2
-rw-r--r--Zend/zend_strtod.c12
-rw-r--r--Zend/zend_strtod.h6
17 files changed, 64 insertions, 63 deletions
diff --git a/Zend/zend.h b/Zend/zend.h
index 4de8b716c2..b4f66f087e 100644
--- a/Zend/zend.h
+++ b/Zend/zend.h
@@ -461,7 +461,7 @@ typedef struct _zend_trait_alias zend_trait_alias;
struct _zend_class_entry {
char type;
- char *name;
+ const char *name;
zend_uint name_length;
struct _zend_class_entry *parent;
int refcount;
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index bc25e7f2c6..7a021f7838 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -248,7 +248,7 @@ ZEND_API zend_class_entry *zend_get_class_entry(const zval *zobject TSRMLS_DC) /
/* }}} */
/* returns 1 if you need to copy result, 0 if it's already a copy */
-ZEND_API int zend_get_object_classname(const zval *object, char **class_name, zend_uint *class_name_len TSRMLS_DC) /* {{{ */
+ZEND_API int zend_get_object_classname(const zval *object, const char **class_name, zend_uint *class_name_len TSRMLS_DC) /* {{{ */
{
if (Z_OBJ_HT_P(object)->get_class_name == NULL ||
Z_OBJ_HT_P(object)->get_class_name(object, class_name, class_name_len, 0 TSRMLS_CC) != SUCCESS) {
@@ -302,9 +302,9 @@ static int parse_arg_object_to_string(zval **arg, char **p, int *pl, int type TS
}
/* }}} */
-static char *zend_parse_arg_impl(int arg_num, zval **arg, va_list *va, char **spec, char **error, int *severity TSRMLS_DC) /* {{{ */
+static char *zend_parse_arg_impl(int arg_num, zval **arg, va_list *va, const char **spec, char **error, int *severity TSRMLS_DC) /* {{{ */
{
- char *spec_walk = *spec;
+ const char *spec_walk = *spec;
char c = *spec_walk++;
int return_null = 0;
@@ -659,7 +659,7 @@ static char *zend_parse_arg_impl(int arg_num, zval **arg, va_list *va, char **sp
}
/* }}} */
-static int zend_parse_arg(int arg_num, zval **arg, va_list *va, char **spec, int quiet TSRMLS_DC) /* {{{ */
+static int zend_parse_arg(int arg_num, zval **arg, va_list *va, const char **spec, int quiet TSRMLS_DC) /* {{{ */
{
char *expected_type = NULL, *error = NULL;
int severity = E_WARNING;
@@ -689,9 +689,9 @@ static int zend_parse_arg(int arg_num, zval **arg, va_list *va, char **spec, int
}
/* }}} */
-static int zend_parse_va_args(int num_args, char *type_spec, va_list *va, int flags TSRMLS_DC) /* {{{ */
+static int zend_parse_va_args(int num_args, const char *type_spec, va_list *va, int flags TSRMLS_DC) /* {{{ */
{
- char *spec_walk;
+ const char *spec_walk;
int c, i;
int min_num_args = -1;
int max_num_args = 0;
@@ -861,7 +861,7 @@ static int zend_parse_va_args(int num_args, char *type_spec, va_list *va, int fl
}\
}
-ZEND_API int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, char *type_spec, ...) /* {{{ */
+ZEND_API int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, const char *type_spec, ...) /* {{{ */
{
va_list va;
int retval;
@@ -876,7 +876,7 @@ ZEND_API int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, char *t
}
/* }}} */
-ZEND_API int zend_parse_parameters(int num_args TSRMLS_DC, char *type_spec, ...) /* {{{ */
+ZEND_API int zend_parse_parameters(int num_args TSRMLS_DC, const char *type_spec, ...) /* {{{ */
{
va_list va;
int retval;
@@ -891,11 +891,11 @@ ZEND_API int zend_parse_parameters(int num_args TSRMLS_DC, char *type_spec, ...)
}
/* }}} */
-ZEND_API int zend_parse_method_parameters(int num_args TSRMLS_DC, zval *this_ptr, char *type_spec, ...) /* {{{ */
+ZEND_API int zend_parse_method_parameters(int num_args TSRMLS_DC, zval *this_ptr, const char *type_spec, ...) /* {{{ */
{
va_list va;
int retval;
- char *p = type_spec;
+ const char *p = type_spec;
zval **object;
zend_class_entry *ce;
@@ -927,11 +927,11 @@ ZEND_API int zend_parse_method_parameters(int num_args TSRMLS_DC, zval *this_ptr
}
/* }}} */
-ZEND_API int zend_parse_method_parameters_ex(int flags, int num_args TSRMLS_DC, zval *this_ptr, char *type_spec, ...) /* {{{ */
+ZEND_API int zend_parse_method_parameters_ex(int flags, int num_args TSRMLS_DC, zval *this_ptr, const char *type_spec, ...) /* {{{ */
{
va_list va;
int retval;
- char *p = type_spec;
+ const char *p = type_spec;
zval **object;
zend_class_entry *ce;
int quiet = flags & ZEND_PARSE_PARAMS_QUIET;
@@ -1922,7 +1922,7 @@ ZEND_API int zend_register_functions(zend_class_entry *scope, const zend_functio
zend_function *ctor = NULL, *dtor = NULL, *clone = NULL, *__get = NULL, *__set = NULL, *__unset = NULL, *__isset = NULL, *__call = NULL, *__callstatic = NULL, *__tostring = NULL;
char *lowercase_name;
int fname_len;
- char *lc_class_name = NULL;
+ const char *lc_class_name = NULL;
int class_name_len = 0;
if (type==MODULE_PERSISTENT) {
@@ -2594,7 +2594,8 @@ static int zend_is_callable_check_func(int check_flags, zval *callable, zend_fca
{
zend_class_entry *ce_org = fcc->calling_scope;
int retval = 0;
- char *mname, *lmname, *colon;
+ char *mname, *lmname;
+ const char *colon;
int clen, mlen;
zend_class_entry *last_scope;
HashTable *ftable;
diff --git a/Zend/zend_API.h b/Zend/zend_API.h
index 352a6088fd..220e1ac43f 100644
--- a/Zend/zend_API.h
+++ b/Zend/zend_API.h
@@ -166,7 +166,7 @@ typedef struct _zend_fcall_info_cache {
#define INIT_OVERLOADED_CLASS_ENTRY_EX(class_container, class_name, class_name_len, functions, handle_fcall, handle_propget, handle_propset, handle_propunset, handle_propisset) \
{ \
- char *cl_name = class_name; \
+ const char *cl_name = class_name; \
int _len = class_name_len; \
class_container.name = zend_new_interned_string(cl_name, _len+1, 0 TSRMLS_CC); \
if (class_container.name == cl_name) { \
@@ -244,12 +244,12 @@ ZEND_API int zend_copy_parameters_array(int param_count, zval *argument_array TS
/* Parameter parsing API -- andrei */
#define ZEND_PARSE_PARAMS_QUIET 1<<1
-ZEND_API int zend_parse_parameters(int num_args TSRMLS_DC, char *type_spec, ...);
-ZEND_API int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, char *type_spec, ...);
+ZEND_API int zend_parse_parameters(int num_args TSRMLS_DC, const char *type_spec, ...);
+ZEND_API int zend_parse_parameters_ex(int flags, int num_args TSRMLS_DC, const char *type_spec, ...);
ZEND_API char *zend_zval_type_name(const zval *arg);
-ZEND_API int zend_parse_method_parameters(int num_args TSRMLS_DC, zval *this_ptr, char *type_spec, ...);
-ZEND_API int zend_parse_method_parameters_ex(int flags, int num_args TSRMLS_DC, zval *this_ptr, char *type_spec, ...);
+ZEND_API int zend_parse_method_parameters(int num_args TSRMLS_DC, zval *this_ptr, const char *type_spec, ...);
+ZEND_API int zend_parse_method_parameters_ex(int flags, int num_args TSRMLS_DC, zval *this_ptr, const char *type_spec, ...);
/* End of parameter parsing API -- andrei */
@@ -331,7 +331,7 @@ ZEND_API zval *zend_read_property(zend_class_entry *scope, zval *object, char *n
ZEND_API zval *zend_read_static_property(zend_class_entry *scope, char *name, int name_length, zend_bool silent TSRMLS_DC);
ZEND_API zend_class_entry *zend_get_class_entry(const zval *zobject TSRMLS_DC);
-ZEND_API int zend_get_object_classname(const zval *object, char **class_name, zend_uint *class_name_len TSRMLS_DC);
+ZEND_API int zend_get_object_classname(const zval *object, const char **class_name, zend_uint *class_name_len TSRMLS_DC);
ZEND_API char *zend_get_type_by_const(int type);
#define getThis() (this_ptr)
diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c
index 5151446814..a96c5bc683 100644
--- a/Zend/zend_builtin_functions.c
+++ b/Zend/zend_builtin_functions.c
@@ -1973,7 +1973,7 @@ ZEND_FUNCTION(debug_print_backtrace)
int lineno;
char *function_name;
char *filename;
- char *class_name = NULL;
+ const char *class_name = NULL;
char *call_type;
char *include_filename = NULL;
zval *arg_array = NULL;
@@ -1989,7 +1989,7 @@ ZEND_FUNCTION(debug_print_backtrace)
ptr = ptr->prev_execute_data;
while (ptr) {
- char *free_class_name = NULL;
+ const char *free_class_name = NULL;
class_name = call_type = NULL;
arg_array = NULL;
diff --git a/Zend/zend_constants.c b/Zend/zend_constants.c
index ed00b99349..04452e40dd 100644
--- a/Zend/zend_constants.c
+++ b/Zend/zend_constants.c
@@ -281,7 +281,7 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
{
zend_constant *c;
int retval = 1;
- char *colon;
+ const char *colon;
zend_class_entry *ce = NULL;
char *class_name;
zval **ret_constant;
@@ -297,7 +297,7 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
colon > name && (*(colon - 1) == ':')) {
int class_name_len = colon - name - 1;
int const_name_len = name_len - class_name_len - 2;
- char *constant_name = colon + 1;
+ const char *constant_name = colon + 1;
char *lcname;
class_name = estrndup(name, class_name_len);
@@ -360,7 +360,7 @@ ZEND_API int zend_get_constant_ex(const char *name, uint name_len, zval *result,
/* compound constant name */
int prefix_len = colon - name;
int const_name_len = name_len - prefix_len - 1;
- char *constant_name = colon + 1;
+ const char *constant_name = colon + 1;
char *lcname;
int found_const = 0;
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 44b38a6372..6c82b09736 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -594,7 +594,7 @@ static inline int zend_verify_arg_error(const zend_function *zf, zend_uint arg_n
zend_execute_data *ptr = EG(current_execute_data)->prev_execute_data;
char *fname = zf->common.function_name;
char *fsep;
- char *fclass;
+ const char *fclass;
if (zf->common.scope) {
fsep = "::";
diff --git a/Zend/zend_ini.c b/Zend/zend_ini.c
index f30f01a5e1..f485ac5045 100644
--- a/Zend/zend_ini.c
+++ b/Zend/zend_ini.c
@@ -147,11 +147,11 @@ ZEND_API int zend_copy_ini_directives(TSRMLS_D) /* {{{ */
static int ini_key_compare(const void *a, const void *b TSRMLS_DC) /* {{{ */
{
- Bucket *f;
- Bucket *s;
+ const Bucket *f;
+ const Bucket *s;
- f = *((Bucket **) a);
- s = *((Bucket **) b);
+ f = *((const Bucket **) a);
+ s = *((const Bucket **) b);
if (f->nKeyLength == 0 && s->nKeyLength == 0) { /* both numeric */
return ZEND_NORMALIZE_BOOL(f->nKeyLength - s->nKeyLength);
diff --git a/Zend/zend_list.c b/Zend/zend_list.c
index b9d20dcc8b..82819cbcc3 100644
--- a/Zend/zend_list.c
+++ b/Zend/zend_list.c
@@ -106,7 +106,7 @@ ZEND_API int zend_register_resource(zval *rsrc_result, void *rsrc_pointer, int r
}
-ZEND_API void *zend_fetch_resource(zval **passed_id TSRMLS_DC, int default_id, char *resource_type_name, int *found_resource_type, int num_resource_types, ...)
+ZEND_API void *zend_fetch_resource(zval **passed_id TSRMLS_DC, int default_id, const char *resource_type_name, int *found_resource_type, int num_resource_types, ...)
{
int id;
int actual_resource_type;
@@ -289,7 +289,7 @@ ZEND_API int zend_register_list_destructors(void (*ld)(void *), void (*pld)(void
}
-ZEND_API int zend_register_list_destructors_ex(rsrc_dtor_func_t ld, rsrc_dtor_func_t pld, char *type_name, int module_number)
+ZEND_API int zend_register_list_destructors_ex(rsrc_dtor_func_t ld, rsrc_dtor_func_t pld, const char *type_name, int module_number)
{
zend_rsrc_list_dtors_entry lde;
@@ -348,7 +348,7 @@ void zend_destroy_rsrc_list_dtors(void)
}
-char *zend_rsrc_list_get_rsrc_type(int resource TSRMLS_DC)
+const char *zend_rsrc_list_get_rsrc_type(int resource TSRMLS_DC)
{
zend_rsrc_list_dtors_entry *lde;
int rsrc_type;
diff --git a/Zend/zend_list.h b/Zend/zend_list.h
index 35fcc38483..614b9f19b0 100644
--- a/Zend/zend_list.h
+++ b/Zend/zend_list.h
@@ -48,7 +48,7 @@ typedef struct _zend_rsrc_list_dtors_entry {
rsrc_dtor_func_t list_dtor_ex;
rsrc_dtor_func_t plist_dtor_ex;
- char *type_name;
+ const char *type_name;
int module_number;
int resource_id;
@@ -58,7 +58,7 @@ typedef struct _zend_rsrc_list_dtors_entry {
#define register_list_destructors(ld, pld) zend_register_list_destructors((void (*)(void *))ld, (void (*)(void *))pld, module_number);
ZEND_API int zend_register_list_destructors(void (*ld)(void *), void (*pld)(void *), int module_number);
-ZEND_API int zend_register_list_destructors_ex(rsrc_dtor_func_t ld, rsrc_dtor_func_t pld, char *type_name, int module_number);
+ZEND_API int zend_register_list_destructors_ex(rsrc_dtor_func_t ld, rsrc_dtor_func_t pld, const char *type_name, int module_number);
void list_entry_destructor(void *ptr);
void plist_entry_destructor(void *ptr);
@@ -80,9 +80,9 @@ ZEND_API void *_zend_list_find(int id, int *type TSRMLS_DC);
#define zend_list_find(id, type) _zend_list_find(id, type TSRMLS_CC)
ZEND_API int zend_register_resource(zval *rsrc_result, void *rsrc_pointer, int rsrc_type TSRMLS_DC);
-ZEND_API void *zend_fetch_resource(zval **passed_id TSRMLS_DC, int default_id, char *resource_type_name, int *found_resource_type, int num_resource_types, ...);
+ZEND_API void *zend_fetch_resource(zval **passed_id TSRMLS_DC, int default_id, const char *resource_type_name, int *found_resource_type, int num_resource_types, ...);
-ZEND_API char *zend_rsrc_list_get_rsrc_type(int resource TSRMLS_DC);
+ZEND_API const char *zend_rsrc_list_get_rsrc_type(int resource TSRMLS_DC);
ZEND_API int zend_fetch_list_dtor_id(char *type_name);
extern ZEND_API int le_index_ptr; /* list entry type for index pointers */
diff --git a/Zend/zend_modules.h b/Zend/zend_modules.h
index 32f29c09b7..fe3f4efa27 100644
--- a/Zend/zend_modules.h
+++ b/Zend/zend_modules.h
@@ -98,7 +98,7 @@ struct _zend_module_entry {
unsigned char type;
void *handle;
int module_number;
- char *build_id;
+ const char *build_id;
};
#define MODULE_DEP_REQUIRED 1
diff --git a/Zend/zend_opcode.c b/Zend/zend_opcode.c
index 3ea912f96d..d823b63ed8 100644
--- a/Zend/zend_opcode.c
+++ b/Zend/zend_opcode.c
@@ -402,7 +402,7 @@ ZEND_API void destroy_op_array(zend_op_array *op_array TSRMLS_DC)
}
if (op_array->arg_info) {
for (i=0; i<op_array->num_args; i++) {
- str_efree((char*)op_array->arg_info[i].name);
+ str_efree((char *)op_array->arg_info[i].name);
if (op_array->arg_info[i].class_name && !IS_INTERNED(op_array->arg_info[i].class_name)) {
efree((char*)op_array->arg_info[i].class_name);
}
diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h
index eee6e546ac..1506f8c8df 100644
--- a/Zend/zend_operators.h
+++ b/Zend/zend_operators.h
@@ -167,7 +167,7 @@ check_digits:
}
} else if (!(digits < SIZEOF_LONG * 2 || (digits == SIZEOF_LONG * 2 && ptr[-digits] <= '7'))) {
if (dval) {
- local_dval = zend_hex_strtod(str, (char **)&ptr);
+ local_dval = zend_hex_strtod(str, &ptr);
}
type = IS_DOUBLE;
}
@@ -178,7 +178,7 @@ process_double:
/* If there's a dval, do the conversion; else continue checking
* the digits if we need to check for a full match */
if (dval) {
- local_dval = zend_strtod(str, (char **)&ptr);
+ local_dval = zend_strtod(str, &ptr);
} else if (allow_errors != 1 && dp_or_e != -1) {
dp_or_e = (*ptr++ == '.') ? 1 : 2;
goto check_digits;
@@ -256,17 +256,17 @@ zend_memnstr(char *haystack, char *needle, int needle_len, char *end)
return NULL;
}
-static inline void *zend_memrchr(const void *s, int c, size_t n)
+static inline const void *zend_memrchr(const void *s, int c, size_t n)
{
- register unsigned char *e;
+ register const unsigned char *e;
if (n <= 0) {
return NULL;
}
- for (e = (unsigned char *)s + n - 1; e >= (unsigned char *)s; e--) {
- if (*e == (unsigned char)c) {
- return (void *)e;
+ for (e = (const unsigned char *)s + n - 1; e >= (const unsigned char *)s; e--) {
+ if (*e == (const unsigned char)c) {
+ return (const void *)e;
}
}
diff --git a/Zend/zend_stream.c b/Zend/zend_stream.c
index 3f08938f02..f36d17bb75 100644
--- a/Zend/zend_stream.c
+++ b/Zend/zend_stream.c
@@ -120,7 +120,7 @@ ZEND_API int zend_stream_open(const char *filename, zend_file_handle *handle TSR
handle->type = ZEND_HANDLE_FP;
handle->opened_path = NULL;
handle->handle.fp = zend_fopen(filename, &handle->opened_path TSRMLS_CC);
- handle->filename = (char *)filename;
+ handle->filename = filename;
handle->free_filename = 0;
memset(&handle->handle.stream.mmap, 0, sizeof(zend_mmap));
diff --git a/Zend/zend_string.c b/Zend/zend_string.c
index 99b24f64e9..3aad3b1919 100644
--- a/Zend/zend_string.c
+++ b/Zend/zend_string.c
@@ -29,11 +29,11 @@
# include <sys/mman.h>
#endif
-ZEND_API char *(*zend_new_interned_string)(char *str, int len, int free_src TSRMLS_DC);
+ZEND_API const char *(*zend_new_interned_string)(const char *str, int len, int free_src TSRMLS_DC);
ZEND_API void (*zend_interned_strings_snapshot)(TSRMLS_D);
ZEND_API void (*zend_interned_strings_restore)(TSRMLS_D);
-static char *zend_new_interned_string_int(char *str, int len, int free_src TSRMLS_DC);
+static const char *zend_new_interned_string_int(const char *str, int len, int free_src TSRMLS_DC);
static void zend_interned_strings_snapshot_int(TSRMLS_D);
static void zend_interned_strings_restore_int(TSRMLS_D);
@@ -79,7 +79,7 @@ void zend_interned_strings_dtor(TSRMLS_D)
#endif
}
-static char *zend_new_interned_string_int(char *arKey, int nKeyLength, int free_src TSRMLS_DC)
+static const char *zend_new_interned_string_int(const char *arKey, int nKeyLength, int free_src TSRMLS_DC)
{
#ifndef ZTS
ulong h;
@@ -97,7 +97,7 @@ static char *zend_new_interned_string_int(char *arKey, int nKeyLength, int free_
if ((p->h == h) && (p->nKeyLength == nKeyLength)) {
if (!memcmp(p->arKey, arKey, nKeyLength)) {
if (free_src) {
- efree(arKey);
+ efree((void *)arKey);
}
return p->arKey;
}
@@ -121,7 +121,7 @@ static char *zend_new_interned_string_int(char *arKey, int nKeyLength, int free_
p->arKey = (char*)(p+1);
memcpy(p->arKey, arKey, nKeyLength);
if (free_src) {
- efree(arKey);
+ efree((void *)arKey);
}
p->nKeyLength = nKeyLength;
p->h = h;
diff --git a/Zend/zend_string.h b/Zend/zend_string.h
index f657b4f14d..18b541a1bc 100644
--- a/Zend/zend_string.h
+++ b/Zend/zend_string.h
@@ -23,7 +23,7 @@
#include "zend.h"
-ZEND_API extern char *(*zend_new_interned_string)(char *str, int len, int free_src TSRMLS_DC);
+ZEND_API extern const char *(*zend_new_interned_string)(const char *str, int len, int free_src TSRMLS_DC);
ZEND_API extern void (*zend_interned_strings_snapshot)(TSRMLS_D);
ZEND_API extern void (*zend_interned_strings_restore)(TSRMLS_D);
diff --git a/Zend/zend_strtod.c b/Zend/zend_strtod.c
index bc2ca97b19..bac3e2466e 100644
--- a/Zend/zend_strtod.c
+++ b/Zend/zend_strtod.c
@@ -2030,7 +2030,7 @@ ret1:
return s0;
}
-ZEND_API double zend_strtod (CONST char *s00, char **se)
+ZEND_API double zend_strtod (CONST char *s00, CONST char **se)
{
int bb2, bb5, bbe, bd2, bd5, bbbits, bs2, c, dsign,
e, e1, esign, i, j, k, nd, nd0, nf, nz, nz0, sign;
@@ -2563,7 +2563,7 @@ retfree:
Bfree(delta);
ret:
if (se)
- *se = (char *)s;
+ *se = s;
result = sign ? -value(rv) : value(rv);
_THREAD_PRIVATE_MUTEX_LOCK(pow5mult_mutex);
@@ -2577,7 +2577,7 @@ ret:
return result;
}
-ZEND_API double zend_hex_strtod(const char *str, char **endptr)
+ZEND_API double zend_hex_strtod(const char *str, const char **endptr)
{
const char *s = str;
char c;
@@ -2604,13 +2604,13 @@ ZEND_API double zend_hex_strtod(const char *str, char **endptr)
}
if (endptr != NULL) {
- *endptr = (char *)(any ? s - 1 : str);
+ *endptr = any ? s - 1 : str;
}
return value;
}
-ZEND_API double zend_oct_strtod(const char *str, char **endptr)
+ZEND_API double zend_oct_strtod(const char *str, const char **endptr)
{
const char *s = str;
char c;
@@ -2632,7 +2632,7 @@ ZEND_API double zend_oct_strtod(const char *str, char **endptr)
}
if (endptr != NULL) {
- *endptr = (char *)(any ? s - 1 : str);
+ *endptr = any ? s - 1 : str;
}
return value;
diff --git a/Zend/zend_strtod.h b/Zend/zend_strtod.h
index f2b06284b4..1771f5c103 100644
--- a/Zend/zend_strtod.h
+++ b/Zend/zend_strtod.h
@@ -27,9 +27,9 @@
BEGIN_EXTERN_C()
ZEND_API void zend_freedtoa(char *s);
ZEND_API char * zend_dtoa(double _d, int mode, int ndigits, int *decpt, int *sign, char **rve);
-ZEND_API double zend_strtod(const char *s00, char **se);
-ZEND_API double zend_hex_strtod(const char *str, char **endptr);
-ZEND_API double zend_oct_strtod(const char *str, char **endptr);
+ZEND_API double zend_strtod(const char *s00, const char **se);
+ZEND_API double zend_hex_strtod(const char *str, const char **endptr);
+ZEND_API double zend_oct_strtod(const char *str, const char **endptr);
ZEND_API int zend_startup_strtod(void);
ZEND_API int zend_shutdown_strtod(void);
END_EXTERN_C()