static void (*zend_message_dispatcher_p)(long message, void *data);
static int (*zend_get_configuration_directive_p)(char *name, uint name_length, zval *contents);
-
-static ZEND_INI_MH(OnUpdateErrorReporting)
+static ZEND_INI_MH(OnUpdateErrorReporting) /* {{{ */
{
if (!new_value) {
EG(error_reporting) = E_ALL & ~E_NOTICE & ~E_STRICT;
}
return SUCCESS;
}
+/* }}} */
-
-static ZEND_INI_MH(OnUpdateEncoding)
+static ZEND_INI_MH(OnUpdateEncoding) /* {{{ */
{
UConverter **converter;
#ifndef ZTS
return SUCCESS;
}
+/* }}} */
#if 0
static ZEND_INI_MH(OnUpdateErrorMode)
}
#endif
-void zend_update_converters_error_behavior(TSRMLS_D)
+void zend_update_converters_error_behavior(TSRMLS_D) /* {{{ */
{
if (UG(fallback_encoding_conv)) {
zend_set_converter_error_mode(UG(fallback_encoding_conv), ZEND_FROM_UNICODE, UG(from_error_mode));
zend_set_converter_subst_char(UG(output_encoding_conv), UG(from_subst_char));
}
}
-
+/* }}} */
ZEND_INI_BEGIN()
ZEND_INI_ENTRY("error_reporting", NULL, ZEND_INI_ALL, OnUpdateErrorReporting)
static char *zend_version_info;
static uint zend_version_info_length;
#define ZEND_CORE_VERSION_INFO "Zend Engine v" ZEND_VERSION ", Copyright (c) 1998-2007 Zend Technologies\n"
-
-
#define PRINT_ZVAL_INDENT 4
-static void print_hash(HashTable *ht, int indent, zend_bool is_object TSRMLS_DC)
+static void print_hash(HashTable *ht, int indent, zend_bool is_object TSRMLS_DC) /* {{{ */
{
zval **tmp;
zstr string_key;
}
ZEND_PUTS(")\n");
}
+/* }}} */
-static void print_flat_hash(HashTable *ht TSRMLS_DC)
+static void print_flat_hash(HashTable *ht TSRMLS_DC) /* {{{ */
{
zval **tmp;
zstr string_key;
zend_hash_move_forward_ex(ht, &iterator);
}
}
+/* }}} */
-ZEND_API void zend_make_string_zval(zval *expr, zval *expr_copy, int *use_copy)
+ZEND_API void zend_make_string_zval(zval *expr, zval *expr_copy, int *use_copy) /* {{{ */
{
if (Z_TYPE_P(expr)==IS_STRING) {
*use_copy = 0;
Z_TYPE_P(expr_copy) = IS_STRING;
*use_copy = 1;
}
+/* }}} */
-ZEND_API void zend_make_printable_zval(zval *expr, zval *expr_copy, int *use_copy)
+ZEND_API void zend_make_printable_zval(zval *expr, zval *expr_copy, int *use_copy) /* {{{ */
{
UErrorCode temp = U_ZERO_ERROR;
TSRMLS_FETCH();
Z_TYPE_P(expr_copy) = IS_STRING;
*use_copy = 1;
}
+/* }}} */
-
-ZEND_API void zend_make_unicode_zval(zval *expr, zval *expr_copy, int *use_copy)
+ZEND_API void zend_make_unicode_zval(zval *expr, zval *expr_copy, int *use_copy) /* {{{ */
{
TSRMLS_FETCH();
Z_TYPE_P(expr_copy) = IS_UNICODE;
*use_copy = 1;
}
+/* }}} */
-
-ZEND_API int zend_print_zval(zval *expr, int indent)
+ZEND_API int zend_print_zval(zval *expr, int indent) /* {{{ */
{
return zend_print_zval_ex(zend_write, expr, indent);
}
+/* }}} */
-
-ZEND_API int zend_print_zval_ex(zend_write_func_t write_func, zval *expr, int indent)
+ZEND_API int zend_print_zval_ex(zend_write_func_t write_func, zval *expr, int indent) /* {{{ */
{
zval expr_copy;
int use_copy;
}
return Z_STRLEN_P(expr);
}
+/* }}} */
-ZEND_API void zend_print_flat_zval_r(zval *expr TSRMLS_DC)
+ZEND_API void zend_print_flat_zval_r(zval *expr TSRMLS_DC) /* {{{ */
{
switch (Z_TYPE_P(expr)) {
case IS_ARRAY:
break;
}
}
+/* }}} */
-ZEND_API void zend_print_zval_r(zval *expr, int indent TSRMLS_DC)
+ZEND_API void zend_print_zval_r(zval *expr, int indent TSRMLS_DC) /* {{{ */
{
zend_print_zval_r_ex(zend_write, expr, indent TSRMLS_CC);
}
+/* }}} */
-
-ZEND_API void zend_print_zval_r_ex(zend_write_func_t write_func, zval *expr, int indent TSRMLS_DC)
+ZEND_API void zend_print_zval_r_ex(zend_write_func_t write_func, zval *expr, int indent TSRMLS_DC) /* {{{ */
{
switch (Z_TYPE_P(expr)) {
case IS_ARRAY:
break;
}
}
+/* }}} */
-static int zend_path_encode_wrapper(char **encpath, int *encpath_len, const UChar *path, int path_len TSRMLS_DC)
+static int zend_path_encode_wrapper(char **encpath, int *encpath_len, const UChar *path, int path_len TSRMLS_DC) /* {{{ */
{
UErrorCode status = U_ZERO_ERROR;
return SUCCESS;
}
+/* }}} */
-static int zend_path_decode_wrapper(UChar **decpath, int *decpath_len, const char *path, int path_len TSRMLS_DC)
+static int zend_path_decode_wrapper(UChar **decpath, int *decpath_len, const char *path, int path_len TSRMLS_DC) /* {{{ */
{
UErrorCode status = U_ZERO_ERROR;
return SUCCESS;
}
+/* }}} */
-static FILE *zend_fopen_wrapper(const char *filename, char **opened_path)
+static FILE *zend_fopen_wrapper(const char *filename, char **opened_path) /* {{{ */
{
if (opened_path) {
*opened_path = estrdup(filename);
}
return fopen(filename, "rb");
}
+/* }}} */
-
-static void register_standard_class(TSRMLS_D)
+static void register_standard_class(TSRMLS_D) /* {{{ */
{
zend_standard_class_def = calloc(1, sizeof(zend_class_entry));
zend_hash_add(CG(class_table), "stdclass", sizeof("stdclass"), &zend_standard_class_def, sizeof(zend_class_entry *), NULL);
}
+/* }}} */
#ifdef ZTS
static zend_bool asp_tags_default = 0;
# define extended_info_default 0
#endif
-static void zend_set_default_compile_time_values(TSRMLS_D)
+static void zend_set_default_compile_time_values(TSRMLS_D) /* {{{ */
{
/* default compile-time values */
CG(asp_tags) = asp_tags_default;
CG(extended_info) = extended_info_default;
CG(literal_type) = ZEND_STR_TYPE;
}
-
+/* }}} */
#define ZEND_U_CONSTANT_DTOR (void (*)(void *)) free_u_zend_constant
-static void zval_copy_persistent(zval *zv)
+static void zval_copy_persistent(zval *zv) /* {{{ */
{
if (Z_TYPE_P(zv) == IS_STRING || Z_TYPE_P(zv) == IS_CONSTANT) {
UChar *ustr;
if (Z_TYPE_P(zv) == IS_STRING) Z_TYPE_P(zv) = IS_UNICODE;
}
}
+/* }}} */
-static void free_u_zend_constant(zend_constant *c)
+static void free_u_zend_constant(zend_constant *c) /* {{{ */
{
if (!(c->flags & CONST_PERSISTENT)) {
zval_dtor(&c->value);
}
free(c->name.v);
}
+/* }}} */
-static void function_to_unicode(zend_function *func TSRMLS_DC)
+static void function_to_unicode(zend_function *func TSRMLS_DC) /* {{{ */
{
if (func->common.function_name.s) {
UChar *uname;
func->common.arg_info = args;
}
}
+/* }}} */
-static void property_info_to_unicode(zend_property_info *info TSRMLS_DC)
+static void property_info_to_unicode(zend_property_info *info TSRMLS_DC) /* {{{ */
{
if (info->name.s) {
UChar *uname;
info->h = zend_u_get_hash_value(IS_UNICODE, info->name, info->name_length+1);
}
}
+/* }}} */
-static void zval_ptr_to_unicode(zval **zv TSRMLS_DC)
+static void zval_ptr_to_unicode(zval **zv TSRMLS_DC) /* {{{ */
{
zval_copy_persistent(*zv);
}
+/* }}} */
-static void const_to_unicode(zend_constant *c)
+static void const_to_unicode(zend_constant *c) /* {{{ */
{
UChar *uname;
if (Z_TYPE(c->value) == IS_STRING) Z_TYPE(c->value) = IS_UNICODE;
}
}
+/* }}} */
-static void class_to_unicode(zend_class_entry **ce TSRMLS_DC)
+static void class_to_unicode(zend_class_entry **ce TSRMLS_DC) /* {{{ */
{
/* Convert name to unicode */
if ((*ce)->name.s) {
zend_hash_to_unicode(&(*ce)->default_properties, (apply_func_t)zval_ptr_to_unicode TSRMLS_CC);
zend_hash_to_unicode(&(*ce)->default_static_members, (apply_func_t)zval_ptr_to_unicode TSRMLS_CC);
}
+/* }}} */
#ifdef ZTS
-static void compiler_globals_ctor(zend_compiler_globals *compiler_globals TSRMLS_DC)
+static void compiler_globals_ctor(zend_compiler_globals *compiler_globals TSRMLS_DC) /* {{{ */
{
zend_function tmp_func;
zend_class_entry *tmp_class;
compiler_globals->static_members = NULL;
}
}
+/* }}} */
-
-static void compiler_globals_dtor(zend_compiler_globals *compiler_globals TSRMLS_DC)
+static void compiler_globals_dtor(zend_compiler_globals *compiler_globals TSRMLS_DC) /* {{{ */
{
if (compiler_globals->function_table != GLOBAL_FUNCTION_TABLE) {
zend_hash_destroy(compiler_globals->function_table);
}
compiler_globals->last_static_member = 0;
}
+/* }}} */
-
-static void executor_globals_ctor(zend_executor_globals *executor_globals TSRMLS_DC)
+static void executor_globals_ctor(zend_executor_globals *executor_globals TSRMLS_DC) /* {{{ */
{
zend_startup_constants(TSRMLS_C);
zend_copy_constants(EG(zend_constants), GLOBAL_CONSTANTS_TABLE);
EG(exit_status) = 0;
EG(active) = 0;
}
+/* }}} */
-
-static void executor_globals_dtor(zend_executor_globals *executor_globals TSRMLS_DC)
+static void executor_globals_dtor(zend_executor_globals *executor_globals TSRMLS_DC) /* {{{ */
{
zend_ini_shutdown(TSRMLS_C);
if (&executor_globals->persistent_list != global_persistent_list) {
free(executor_globals->zend_constants);
}
}
+/* }}} */
-
-static void zend_new_thread_end_handler(THREAD_T thread_id TSRMLS_DC)
+static void zend_new_thread_end_handler(THREAD_T thread_id TSRMLS_DC) /* {{{ */
{
if (zend_copy_ini_directives(TSRMLS_C) == SUCCESS) {
zend_ini_refresh_caches(ZEND_INI_STAGE_STARTUP TSRMLS_CC);
}
}
+/* }}} */
#endif
#if defined(__FreeBSD__) || defined(__DragonFly__)
#include <floatingpoint.h>
#endif
-
-static void scanner_globals_ctor(zend_scanner_globals *scanner_globals_p TSRMLS_DC)
+static void scanner_globals_ctor(zend_scanner_globals *scanner_globals_p TSRMLS_DC) /* {{{ */
{
scanner_globals_p->c_buf_p = (char *) 0;
scanner_globals_p->init = 1;
scanner_globals_p->yy_start_stack_depth = 0;
scanner_globals_p->yy_start_stack = 0;
}
+/* }}} */
-static void unicode_globals_ctor(zend_unicode_globals *unicode_globals TSRMLS_DC)
+static void unicode_globals_ctor(zend_unicode_globals *unicode_globals TSRMLS_DC) /* {{{ */
{
unicode_globals->unicode = 0;
unicode_globals->utf8_conv = NULL;
zend_hash_init_ex(&unicode_globals->flex_compatible, 0, NULL, NULL, 1, 0);
}
+/* }}} */
-static void unicode_globals_dtor(zend_unicode_globals *unicode_globals TSRMLS_DC)
+static void unicode_globals_dtor(zend_unicode_globals *unicode_globals TSRMLS_DC) /* {{{ */
{
if (unicode_globals->root_collator) {
ucol_close(unicode_globals->root_collator);
}
zend_hash_destroy(&unicode_globals->flex_compatible);
}
+/* }}} */
void zend_init_opcodes_handlers();
-int zend_startup(zend_utility_functions *utility_functions, char **extensions, int start_builtin_functions)
+int zend_startup(zend_utility_functions *utility_functions, char **extensions, int start_builtin_functions) /* {{{ */
{
#ifdef ZTS
zend_compiler_globals *compiler_globals;
return SUCCESS;
}
+/* }}} */
-
-void zend_register_standard_ini_entries(TSRMLS_D)
+void zend_register_standard_ini_entries(TSRMLS_D) /* {{{ */
{
int module_number = 0;
UG(runtime_encoding_conv) = old_runtime_encoding_conv;
}
}
+/* }}} */
/* Unlink the global (r/o) copies of the class, function and constant tables,
* and use a fresh r/w copy for the startup thread
*/
-void zend_post_startup(TSRMLS_D)
+void zend_post_startup(TSRMLS_D) /* {{{ */
{
#ifdef ZTS
zend_compiler_globals *compiler_globals = ts_resource(compiler_globals_id);
zend_copy_ini_directives(TSRMLS_C);
#endif
}
+/* }}} */
-
-void zend_shutdown(TSRMLS_D)
+void zend_shutdown(TSRMLS_D) /* {{{ */
{
#ifdef ZEND_WIN32
zend_shutdown_timeout_thread();
/* free ICU cache and any open ICU item (collators, converters, ...) */
/* u_cleanup(); */
}
+/* }}} */
-
-void zend_set_utility_values(zend_utility_values *utility_values)
+void zend_set_utility_values(zend_utility_values *utility_values) /* {{{ */
{
zend_uv = *utility_values;
zend_uv.import_use_extension_length = strlen(zend_uv.import_use_extension);
}
-
+/* }}} */
/* this should be compatible with the standard zenderror */
-void zenderror(char *error)
+void zenderror(char *error) /* {{{ */
{
zend_error(E_PARSE, "%s", error);
}
-
+/* }}} */
BEGIN_EXTERN_C()
-ZEND_API void _zend_bailout(char *filename, uint lineno)
+ZEND_API void _zend_bailout(char *filename, uint lineno) /* {{{ */
{
TSRMLS_FETCH();
EG(current_execute_data) = NULL;
longjmp(*EG(bailout), FAILURE);
}
+/* }}} */
END_EXTERN_C()
-
-void zend_append_version_info(zend_extension *extension)
+void zend_append_version_info(zend_extension *extension) /* {{{ */
{
char *new_info;
uint new_info_length;
zend_version_info_length += new_info_length;
free(new_info);
}
+/* }}} */
-
-ZEND_API char *get_zend_version()
+ZEND_API char *get_zend_version() /* {{{ */
{
return zend_version_info;
}
+/* }}} */
-ZEND_API void zend_reset_locale_deps(TSRMLS_D)
+ZEND_API void zend_reset_locale_deps(TSRMLS_D) /* {{{ */
{
UCollator *coll;
UErrorCode status = U_ZERO_ERROR;
}
UG(default_collator) = zend_collator_create(coll);
}
+/* }}} */
-static void init_unicode_request_globals(TSRMLS_D)
+static void init_unicode_request_globals(TSRMLS_D) /* {{{ */
{
UG(default_locale) = safe_estrdup(uloc_getDefault());
UG(default_collator) = NULL;
zend_reset_locale_deps(TSRMLS_C);
}
+/* }}} */
-static void shutdown_unicode_request_globals(TSRMLS_D)
+static void shutdown_unicode_request_globals(TSRMLS_D) /* {{{ */
{
zend_collator_destroy(UG(default_collator));
efree(UG(default_locale));
}
+/* }}} */
-void zend_activate(TSRMLS_D)
+void zend_activate(TSRMLS_D) /* {{{ */
{
init_unicode_request_globals(TSRMLS_C);
init_unicode_strings();
init_executor(TSRMLS_C);
startup_scanner(TSRMLS_C);
}
+/* }}} */
-
-void zend_activate_modules(TSRMLS_D)
+void zend_activate_modules(TSRMLS_D) /* {{{ */
{
zend_hash_apply(&module_registry, (apply_func_t) module_registry_request_startup TSRMLS_CC);
}
+/* }}} */
-void zend_deactivate_modules(TSRMLS_D)
+void zend_deactivate_modules(TSRMLS_D) /* {{{ */
{
EG(opline_ptr) = NULL; /* we're no longer executing anything */
zend_hash_apply(&module_registry, (apply_func_t) module_registry_cleanup TSRMLS_CC);
} zend_end_try();
}
+/* }}} */
-void zend_call_destructors(TSRMLS_D)
+void zend_call_destructors(TSRMLS_D) /* {{{ */
{
zend_try {
shutdown_destructors(TSRMLS_C);
} zend_end_try();
}
+/* }}} */
-void zend_deactivate(TSRMLS_D)
+void zend_deactivate(TSRMLS_D) /* {{{ */
{
/* we're no longer executing anything */
EG(opline_ptr) = NULL;
zend_ini_deactivate(TSRMLS_C);
} zend_end_try();
}
+/* }}} */
-
-static int exec_done_cb(zend_module_entry *module TSRMLS_DC)
+static int exec_done_cb(zend_module_entry *module TSRMLS_DC) /* {{{ */
{
if (module->post_deactivate_func) {
module->post_deactivate_func();
}
return 0;
}
+/* }}} */
-
-void zend_post_deactivate_modules(TSRMLS_D)
+void zend_post_deactivate_modules(TSRMLS_D) /* {{{ */
{
zend_hash_apply(&module_registry, (apply_func_t) exec_done_cb TSRMLS_CC);
zend_hash_reverse_apply(&module_registry, (apply_func_t) module_registry_unload_temp TSRMLS_CC);
}
-
+/* }}} */
BEGIN_EXTERN_C()
-ZEND_API void zend_message_dispatcher(long message, void *data)
+ZEND_API void zend_message_dispatcher(long message, void *data) /* {{{ */
{
if (zend_message_dispatcher_p) {
zend_message_dispatcher_p(message, data);
}
}
+/* }}} */
END_EXTERN_C()
-
-ZEND_API int zend_get_configuration_directive(char *name, uint name_length, zval *contents)
+ZEND_API int zend_get_configuration_directive(char *name, uint name_length, zval *contents) /* {{{ */
{
if (zend_get_configuration_directive_p) {
return zend_get_configuration_directive_p(name, name_length, contents);
return FAILURE;
}
}
+/* }}} */
-
-ZEND_API void zend_error(int type, const char *format, ...)
+ZEND_API void zend_error(int type, const char *format, ...) /* {{{ */
{
va_list args;
va_list usr_copy;
zend_init_compiler_data_structures(TSRMLS_C);
}
}
+/* }}} */
#if defined(__GNUC__) && !defined(__INTEL_COMPILER) && !defined(DARWIN) && !defined(__hpux) && !defined(_AIX) && !defined(__osf__)
void zend_error_noreturn(int type, const char *format, ...) __attribute__ ((alias("zend_error"),noreturn));
#endif
-ZEND_API void zend_output_debug_string(zend_bool trigger_break, char *format, ...)
+ZEND_API void zend_output_debug_string(zend_bool trigger_break, char *format, ...) /* {{{ */
{
#if ZEND_DEBUG
va_list args;
va_end(args);
#endif
}
+/* }}} */
-ZEND_API int zend_execute_scripts(int type TSRMLS_DC, zval **retval, int file_count, ...)
+ZEND_API int zend_execute_scripts(int type TSRMLS_DC, zval **retval, int file_count, ...) /* {{{ */
{
va_list files;
int i;
return SUCCESS;
}
+/* }}} */
#define COMPILED_STRING_DESCRIPTION_FORMAT "%s(%d) : %s"
-ZEND_API char *zend_make_compiled_string_description(char *name TSRMLS_DC)
+ZEND_API char *zend_make_compiled_string_description(char *name TSRMLS_DC) /* {{{ */
{
char *cur_filename;
int cur_lineno;
zend_spprintf(&compiled_string_description, 0, COMPILED_STRING_DESCRIPTION_FORMAT, cur_filename, cur_lineno, name);
return compiled_string_description;
}
+/* }}} */
-
-void free_estring(char **str_p)
+void free_estring(char **str_p) /* {{{ */
{
efree(*str_p);
}
-
+/* }}} */
/*
* Local variables:
ZEND_API zend_op_array *(*zend_compile_file)(zend_file_handle *file_handle, int type TSRMLS_DC);
ZEND_API zend_op_array *(*zend_compile_string)(zval *source_string, char *filename TSRMLS_DC);
-
#ifndef ZTS
ZEND_API zend_compiler_globals compiler_globals;
ZEND_API zend_executor_globals executor_globals;
#endif
-static void zend_duplicate_property_info(zend_property_info *property_info)
+static void zend_duplicate_property_info(zend_property_info *property_info) /* {{{ */
{
TSRMLS_FETCH();
}
}
}
+/* }}} */
-
-static void zend_duplicate_property_info_internal(zend_property_info *property_info)
+static void zend_duplicate_property_info_internal(zend_property_info *property_info) /* {{{ */
{
TSRMLS_FETCH();
property_info->name.s = zend_strndup(property_info->name.s, property_info->name_length);
}
}
+/* }}} */
-
-static void zend_destroy_property_info(zend_property_info *property_info)
+static void zend_destroy_property_info(zend_property_info *property_info) /* {{{ */
{
efree(property_info->name.v);
if (property_info->doc_comment.v) {
efree(property_info->doc_comment.v);
}
}
+/* }}} */
-
-static void zend_destroy_property_info_internal(zend_property_info *property_info)
+static void zend_destroy_property_info_internal(zend_property_info *property_info) /* {{{ */
{
free(property_info->name.v);
}
+/* }}} */
-static void build_runtime_defined_function_key(zval *result, zend_uchar type, zstr name, int name_length TSRMLS_DC)
+static void build_runtime_defined_function_key(zval *result, zend_uchar type, zstr name, int name_length TSRMLS_DC) /* {{{ */
{
char char_pos_buf[32];
uint char_pos_len;
}
result->refcount = 1;
}
+/* }}} */
-
-int zend_auto_global_arm(zend_auto_global *auto_global TSRMLS_DC)
+int zend_auto_global_arm(zend_auto_global *auto_global TSRMLS_DC) /* {{{ */
{
auto_global->armed = (auto_global->auto_global_callback ? 1 : 0);
return 0;
}
+/* }}} */
-
-int zend_auto_global_disable_jit(char *varname, zend_uint varname_length TSRMLS_DC)
+int zend_auto_global_disable_jit(char *varname, zend_uint varname_length TSRMLS_DC) /* {{{ */
{
zend_auto_global *auto_global;
auto_global->armed = 0;
return SUCCESS;
}
+/* }}} */
-
-static void init_compiler_declarables(TSRMLS_D)
+static void init_compiler_declarables(TSRMLS_D) /* {{{ */
{
Z_TYPE(CG(declarables).ticks) = IS_LONG;
Z_LVAL(CG(declarables).ticks) = 0;
}
+/* }}} */
-
-void zend_init_compiler_data_structures(TSRMLS_D)
+void zend_init_compiler_data_structures(TSRMLS_D) /* {{{ */
{
zend_stack_init(&CG(bp_stack));
zend_stack_init(&CG(function_call_stack));
zend_stack_init(&CG(labels_stack));
CG(labels) = NULL;
}
+/* }}} */
-
-void init_compiler(TSRMLS_D)
+void init_compiler(TSRMLS_D) /* {{{ */
{
CG(auto_globals_cache) = emalloc(sizeof(zval**) * zend_hash_num_elements(CG(auto_globals)));
CG(active_op_array) = NULL;
zend_llist_init(&CG(open_files), sizeof(zend_file_handle), (void (*)(void *)) zend_file_handle_dtor, 0);
CG(unclean_shutdown) = 0;
}
+/* }}} */
-
-void shutdown_compiler(TSRMLS_D)
+void shutdown_compiler(TSRMLS_D) /* {{{ */
{
efree(CG(auto_globals_cache));
CG(auto_globals_cache) = NULL;
zend_llist_destroy(&CG(open_files));
zend_stack_destroy(&CG(labels_stack));
}
+/* }}} */
-
-ZEND_API char *zend_set_compiled_filename(char *new_compiled_filename TSRMLS_DC)
+ZEND_API char *zend_set_compiled_filename(char *new_compiled_filename TSRMLS_DC) /* {{{ */
{
char **pp, *p;
int length = strlen(new_compiled_filename);
CG(compiled_filename) = p;
return p;
}
+/* }}} */
-
-ZEND_API void zend_restore_compiled_filename(char *original_compiled_filename TSRMLS_DC)
+ZEND_API void zend_restore_compiled_filename(char *original_compiled_filename TSRMLS_DC) /* {{{ */
{
CG(compiled_filename) = original_compiled_filename;
}
+/* }}} */
-
-ZEND_API char *zend_get_compiled_filename(TSRMLS_D)
+ZEND_API char *zend_get_compiled_filename(TSRMLS_D) /* {{{ */
{
return CG(compiled_filename);
}
+/* }}} */
-
-ZEND_API int zend_get_compiled_lineno(TSRMLS_D)
+ZEND_API int zend_get_compiled_lineno(TSRMLS_D) /* {{{ */
{
return CG(zend_lineno);
}
+/* }}} */
-
-ZEND_API zend_bool zend_is_compiling(TSRMLS_D)
+ZEND_API zend_bool zend_is_compiling(TSRMLS_D) /* {{{ */
{
return CG(in_compilation);
}
+/* }}} */
-
-ZEND_API char *zend_set_compiled_script_encoding(char *new_script_enc TSRMLS_DC)
+ZEND_API char *zend_set_compiled_script_encoding(char *new_script_enc TSRMLS_DC) /* {{{ */
{
char **pp, *p;
int length = strlen(new_script_enc);
CG(script_encoding) = p;
return p;
}
+/* }}} */
-
-ZEND_API void zend_restore_compiled_script_encoding(char *original_script_enc TSRMLS_DC)
+ZEND_API void zend_restore_compiled_script_encoding(char *original_script_enc TSRMLS_DC) /* {{{ */
{
CG(script_encoding) = original_script_enc;
}
+/* }}} */
-
-ZEND_API char *zend_get_compiled_script_encoding(TSRMLS_D)
+ZEND_API char *zend_get_compiled_script_encoding(TSRMLS_D) /* {{{ */
{
return CG(script_encoding);
}
+/* }}} */
-
-static zend_uint get_temporary_variable(zend_op_array *op_array)
+static zend_uint get_temporary_variable(zend_op_array *op_array) /* {{{ */
{
return (op_array->T)++ * sizeof(temp_variable);
}
+/* }}} */
-static int lookup_cv(zend_op_array *op_array, zend_uchar type, zstr name, int name_len)
+static int lookup_cv(zend_op_array *op_array, zend_uchar type, zstr name, int name_len) /* {{{ */
{
int i = 0;
ulong hash_value = zend_u_inline_hash_func(type, name, name_len+1);
op_array->vars[i].hash_value = hash_value;
return i;
}
+/* }}} */
-
-void zend_do_binary_op(zend_uchar op, znode *result, znode *op1, znode *op2 TSRMLS_DC)
+void zend_do_binary_op(zend_uchar op, znode *result, znode *op1, znode *op2 TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->op2 = *op2;
*result = opline->result;
}
+/* }}} */
-
-void zend_do_unary_op(zend_uchar op, znode *result, znode *op1 TSRMLS_DC)
+void zend_do_unary_op(zend_uchar op, znode *result, znode *op1 TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
*result = opline->result;
SET_UNUSED(opline->op2);
}
+/* }}} */
#define MAKE_NOP(opline) { opline->opcode = ZEND_NOP; memset(&opline->result,0,sizeof(znode)); memset(&opline->op1,0,sizeof(znode)); memset(&opline->op2,0,sizeof(znode)); opline->result.op_type=opline->op1.op_type=opline->op2.op_type=IS_UNUSED; }
-
-static void zend_do_op_data(zend_op *data_op, znode *value TSRMLS_DC)
+static void zend_do_op_data(zend_op *data_op, znode *value TSRMLS_DC) /* {{{ */
{
data_op->opcode = ZEND_OP_DATA;
data_op->op1 = *value;
SET_UNUSED(data_op->op2);
}
+/* }}} */
-void zend_do_binary_assign_op(zend_uchar op, znode *result, znode *op1, znode *op2 TSRMLS_DC)
+void zend_do_binary_assign_op(zend_uchar op, znode *result, znode *op1, znode *op2 TSRMLS_DC) /* {{{ */
{
int last_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->result.u.var = get_temporary_variable(CG(active_op_array));
*result = opline->result;
}
+/* }}} */
-void fetch_simple_variable_ex(znode *result, znode *varname, int bp, zend_uchar op TSRMLS_DC)
+void fetch_simple_variable_ex(znode *result, znode *varname, int bp, zend_uchar op TSRMLS_DC) /* {{{ */
{
zend_op opline;
zend_op *opline_ptr;
zend_llist_add_element(fetch_list_ptr, opline_ptr);
}
}
+/* }}} */
-void fetch_simple_variable(znode *result, znode *varname, int bp TSRMLS_DC)
+void fetch_simple_variable(znode *result, znode *varname, int bp TSRMLS_DC) /* {{{ */
{
/* the default mode must be Write, since fetch_simple_variable() is used to define function arguments */
fetch_simple_variable_ex(result, varname, bp, ZEND_FETCH_W TSRMLS_CC);
}
+/* }}} */
-void zend_do_fetch_static_member(znode *result, znode *class_znode TSRMLS_DC)
+void zend_do_fetch_static_member(znode *result, znode *class_znode TSRMLS_DC) /* {{{ */
{
zend_llist *fetch_list_ptr;
zend_llist_element *le;
}
}
}
+/* }}} */
-void fetch_array_begin(znode *result, znode *varname, znode *first_dim TSRMLS_DC)
+void fetch_array_begin(znode *result, znode *varname, znode *first_dim TSRMLS_DC) /* {{{ */
{
fetch_simple_variable(result, varname, 1 TSRMLS_CC);
fetch_array_dim(result, result, first_dim TSRMLS_CC);
}
+/* }}} */
-
-void fetch_array_dim(znode *result, znode *parent, znode *dim TSRMLS_DC)
+void fetch_array_dim(znode *result, znode *parent, znode *dim TSRMLS_DC) /* {{{ */
{
zend_op opline;
zend_llist *fetch_list_ptr;
zend_stack_top(&CG(bp_stack), (void **) &fetch_list_ptr);
zend_llist_add_element(fetch_list_ptr, &opline);
}
+/* }}} */
-
-void fetch_string_offset(znode *result, znode *parent, znode *offset TSRMLS_DC)
+void fetch_string_offset(znode *result, znode *parent, znode *offset TSRMLS_DC) /* {{{ */
{
fetch_array_dim(result, parent, offset TSRMLS_CC);
}
+/* }}} */
-
-void zend_do_print(znode *result, znode *arg TSRMLS_DC)
+void zend_do_print(znode *result, znode *arg TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op2);
*result = opline->result;
}
+/* }}} */
-
-void zend_do_echo(znode *arg, zend_bool inline_html TSRMLS_DC)
+void zend_do_echo(znode *arg, zend_bool inline_html TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->extended_value = inline_html;
SET_UNUSED(opline->op2);
}
+/* }}} */
-void zend_do_abstract_method(znode *function_name, znode *modifiers, znode *body TSRMLS_DC)
+void zend_do_abstract_method(znode *function_name, znode *modifiers, znode *body TSRMLS_DC) /* {{{ */
{
char *method_type;
}
}
}
+/* }}} */
-static zend_bool opline_is_fetch_this(zend_op *opline TSRMLS_DC)
+static zend_bool opline_is_fetch_this(zend_op *opline TSRMLS_DC) /* {{{ */
{
if ((opline->opcode == ZEND_FETCH_W) && (opline->op1.op_type == IS_CONST)
&& (Z_TYPE(opline->op1.u.constant) == IS_STRING ||
return 0;
}
}
+/* }}} */
-void zend_do_assign(znode *result, znode *variable, znode *value TSRMLS_DC)
+void zend_do_assign(znode *result, znode *variable, znode *value TSRMLS_DC) /* {{{ */
{
int last_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->result.u.var = get_temporary_variable(CG(active_op_array));
*result = opline->result;
}
+/* }}} */
-static inline zend_bool zend_is_function_or_method_call(znode *variable)
+static inline zend_bool zend_is_function_or_method_call(znode *variable) /* {{{ */
{
zend_uint type = variable->u.EA.type;
return ((type & ZEND_PARSED_METHOD_CALL) || (type == ZEND_PARSED_FUNCTION_CALL));
}
+/* }}} */
-void zend_do_assign_ref(znode *result, znode *lvar, znode *rvar TSRMLS_DC)
+void zend_do_assign_ref(znode *result, znode *lvar, znode *rvar TSRMLS_DC) /* {{{ */
{
int last_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->op1 = *lvar;
opline->op2 = *rvar;
}
+/* }}} */
-
-static inline void do_begin_loop(TSRMLS_D)
+static inline void do_begin_loop(TSRMLS_D) /* {{{ */
{
zend_brk_cont_element *brk_cont_element;
int parent;
brk_cont_element->start = get_next_op_number(CG(active_op_array));
brk_cont_element->parent = parent;
}
+/* }}} */
-
-static inline void do_end_loop(int cont_addr TSRMLS_DC)
+static inline void do_end_loop(int cont_addr TSRMLS_DC) /* {{{ */
{
CG(active_op_array)->brk_cont_array[CG(active_op_array)->current_brk_cont].cont = cont_addr;
CG(active_op_array)->brk_cont_array[CG(active_op_array)->current_brk_cont].brk = get_next_op_number(CG(active_op_array));
CG(active_op_array)->current_brk_cont = CG(active_op_array)->brk_cont_array[CG(active_op_array)->current_brk_cont].parent;
}
+/* }}} */
-
-void zend_do_while_cond(znode *expr, znode *close_bracket_token TSRMLS_DC)
+void zend_do_while_cond(znode *expr, znode *close_bracket_token TSRMLS_DC) /* {{{ */
{
int while_cond_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
do_begin_loop(TSRMLS_C);
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_while_end(znode *while_token, znode *close_bracket_token TSRMLS_DC)
+void zend_do_while_end(znode *while_token, znode *close_bracket_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_for_cond(znode *expr, znode *second_semicolon_token TSRMLS_DC)
+void zend_do_for_cond(znode *expr, znode *second_semicolon_token TSRMLS_DC) /* {{{ */
{
int for_cond_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
second_semicolon_token->u.opline_num = for_cond_op_number;
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_for_before_statement(znode *cond_start, znode *second_semicolon_token TSRMLS_DC)
+void zend_do_for_before_statement(znode *cond_start, znode *second_semicolon_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_for_end(znode *second_semicolon_token TSRMLS_DC)
+void zend_do_for_end(znode *second_semicolon_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_pre_incdec(znode *result, znode *op1, zend_uchar op TSRMLS_DC)
+void zend_do_pre_incdec(znode *result, znode *op1, zend_uchar op TSRMLS_DC) /* {{{ */
{
int last_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline;
opline->result.u.var = get_temporary_variable(CG(active_op_array));
*result = opline->result;
}
+/* }}} */
-
-void zend_do_post_incdec(znode *result, znode *op1, zend_uchar op TSRMLS_DC)
+void zend_do_post_incdec(znode *result, znode *op1, zend_uchar op TSRMLS_DC) /* {{{ */
{
int last_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline;
opline->result.u.var = get_temporary_variable(CG(active_op_array));
*result = opline->result;
}
+/* }}} */
-
-void zend_do_if_cond(znode *cond, znode *closing_bracket_token TSRMLS_DC)
+void zend_do_if_cond(znode *cond, znode *closing_bracket_token TSRMLS_DC) /* {{{ */
{
int if_cond_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op2);
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_if_after_statement(znode *closing_bracket_token, unsigned char initialize TSRMLS_DC)
+void zend_do_if_after_statement(znode *closing_bracket_token, unsigned char initialize TSRMLS_DC) /* {{{ */
{
int if_end_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_if_end(TSRMLS_D)
+void zend_do_if_end(TSRMLS_D) /* {{{ */
{
int next_op_number = get_next_op_number(CG(active_op_array));
zend_llist *jmp_list_ptr;
zend_stack_del_top(&CG(bp_stack));
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-void zend_check_writable_variable(znode *variable)
+void zend_check_writable_variable(znode *variable) /* {{{ */
{
zend_uint type = variable->u.EA.type;
zend_error(E_COMPILE_ERROR, "Can't use function return value in write context");
}
}
+/* }}} */
-void zend_do_begin_variable_parse(TSRMLS_D)
+void zend_do_begin_variable_parse(TSRMLS_D) /* {{{ */
{
zend_llist fetch_list;
zend_llist_init(&fetch_list, sizeof(zend_op), NULL, 0);
zend_stack_push(&CG(bp_stack), (void *) &fetch_list, sizeof(zend_llist));
}
+/* }}} */
-
-void zend_do_end_variable_parse(int type, int arg_offset TSRMLS_DC)
+void zend_do_end_variable_parse(int type, int arg_offset TSRMLS_DC) /* {{{ */
{
zend_llist *fetch_list_ptr;
zend_llist_element *le;
zend_llist_destroy(fetch_list_ptr);
zend_stack_del_top(&CG(bp_stack));
}
+/* }}} */
-
-void zend_do_init_string(znode *result TSRMLS_DC)
+void zend_do_init_string(znode *result TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_add_string(znode *result, znode *op1, znode *op2 TSRMLS_DC)
+void zend_do_add_string(znode *result, znode *op1, znode *op2 TSRMLS_DC) /* {{{ */
{
zend_op *opline;
opline->result = opline->op1;
*result = opline->result;
}
+/* }}} */
-
-void zend_do_add_variable(znode *result, znode *op1, znode *op2 TSRMLS_DC)
+void zend_do_add_variable(znode *result, znode *op1, znode *op2 TSRMLS_DC) /* {{{ */
{
zend_op *opline;
opline->extended_value = CG(literal_type);
*result = opline->result;
}
+/* }}} */
-void zend_do_free(znode *op1 TSRMLS_DC)
+void zend_do_free(znode *op1 TSRMLS_DC) /* {{{ */
{
if (op1->op_type==IS_TMP_VAR) {
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
zval_dtor(&op1->u.constant);
}
}
+/* }}} */
-
-int zend_do_verify_access_types(znode *current_access_type, znode *new_modifier)
+int zend_do_verify_access_types(znode *current_access_type, znode *new_modifier) /* {{{ */
{
if ((Z_LVAL(current_access_type->u.constant) & ZEND_ACC_PPP_MASK)
&& (Z_LVAL(new_modifier->u.constant) & ZEND_ACC_PPP_MASK)
}
return (Z_LVAL(current_access_type->u.constant) | Z_LVAL(new_modifier->u.constant));
}
+/* }}} */
-
-void zend_do_begin_function_declaration(znode *function_token, znode *function_name, int is_method, int return_reference, znode *fn_flags_znode TSRMLS_DC)
+void zend_do_begin_function_declaration(znode *function_token, znode *function_name, int is_method, int return_reference, znode *fn_flags_znode TSRMLS_DC) /* {{{ */
{
zend_op_array op_array;
zstr name = Z_UNIVAL(function_name->u.constant);
zend_stack_push(&CG(labels_stack), (void *) &CG(labels), sizeof(HashTable*));
CG(labels) = NULL;
}
+/* }}} */
-void zend_do_handle_exception(TSRMLS_D)
+void zend_do_handle_exception(TSRMLS_D) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_end_function_declaration(znode *function_token TSRMLS_DC)
+void zend_do_end_function_declaration(znode *function_token TSRMLS_DC) /* {{{ */
{
unsigned int lcname_len;
zstr lcname;
zend_stack_del_top(&CG(switch_cond_stack));
zend_stack_del_top(&CG(foreach_copy_stack));
}
+/* }}} */
-
-void zend_do_receive_arg(zend_uchar op, znode *var, znode *offset, znode *initialization, znode *class_type, znode *varname, zend_uchar pass_by_reference TSRMLS_DC)
+void zend_do_receive_arg(zend_uchar op, znode *var, znode *offset, znode *initialization, znode *class_type, znode *varname, zend_uchar pass_by_reference TSRMLS_DC) /* {{{ */
{
zend_op *opline;
zend_arg_info *cur_arg_info;
}
opline->result.u.EA.type |= EXT_TYPE_UNUSED;
}
+/* }}} */
-
-int zend_do_begin_function_call(znode *function_name TSRMLS_DC)
+int zend_do_begin_function_call(znode *function_name TSRMLS_DC) /* {{{ */
{
zend_function *function;
unsigned int lcname_len;
zend_do_extended_fcall_begin(TSRMLS_C);
return 0;
}
+/* }}} */
-
-
-void zend_do_begin_method_call(znode *left_bracket TSRMLS_DC)
+void zend_do_begin_method_call(znode *left_bracket TSRMLS_DC) /* {{{ */
{
zend_op *last_op;
int last_op_number;
zend_stack_push(&CG(function_call_stack), (void *) &ptr, sizeof(zend_function *));
zend_do_extended_fcall_begin(TSRMLS_C);
}
+/* }}} */
-
-void zend_do_clone(znode *result, znode *expr TSRMLS_DC)
+void zend_do_clone(znode *result, znode *expr TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->result.u.var = get_temporary_variable(CG(active_op_array));
*result = opline->result;
}
+/* }}} */
-
-void zend_do_begin_dynamic_function_call(znode *function_name TSRMLS_DC)
+void zend_do_begin_dynamic_function_call(znode *function_name TSRMLS_DC) /* {{{ */
{
unsigned char *ptr = NULL;
zend_op *opline;
zend_stack_push(&CG(function_call_stack), (void *) &ptr, sizeof(zend_function *));
zend_do_extended_fcall_begin(TSRMLS_C);
}
+/* }}} */
-
-void zend_do_fetch_class(znode *result, znode *class_name TSRMLS_DC)
+void zend_do_fetch_class(znode *result, znode *class_name TSRMLS_DC) /* {{{ */
{
long fetch_class_op_number;
zend_op *opline;
opline->result.op_type = IS_CONST; /* FIXME: Hack so that INIT_FCALL_BY_NAME still knows this is a class */
*result = opline->result;
}
+/* }}} */
-
-void zend_do_fetch_class_name(znode *result, znode *class_name_entry, znode *class_name TSRMLS_DC)
+void zend_do_fetch_class_name(znode *result, znode *class_name_entry, znode *class_name TSRMLS_DC) /* {{{ */
{
zend_uint length;
}
Z_STRLEN(result->u.constant) = length;
}
+/* }}} */
-void zend_do_begin_class_member_function_call(znode *class_name, znode *method_name TSRMLS_DC)
+void zend_do_begin_class_member_function_call(znode *class_name, znode *method_name TSRMLS_DC) /* {{{ */
{
unsigned char *ptr = NULL;
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
zend_stack_push(&CG(function_call_stack), (void *) &ptr, sizeof(zend_function *));
zend_do_extended_fcall_begin(TSRMLS_C);
}
+/* }}} */
-
-void zend_do_end_function_call(znode *function_name, znode *result, znode *argument_list, int is_method, int is_dynamic_fcall TSRMLS_DC)
+void zend_do_end_function_call(znode *function_name, znode *result, znode *argument_list, int is_method, int is_dynamic_fcall TSRMLS_DC) /* {{{ */
{
zend_op *opline;
zend_stack_del_top(&CG(function_call_stack));
opline->extended_value = Z_LVAL(argument_list->u.constant);
}
+/* }}} */
-
-void zend_do_pass_param(znode *param, zend_uchar op, int offset TSRMLS_DC)
+void zend_do_pass_param(znode *param, zend_uchar op, int offset TSRMLS_DC) /* {{{ */
{
zend_op *opline;
int original_op=op;
opline->op2.u.opline_num = offset;
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-static int generate_free_switch_expr(zend_switch_entry *switch_entry TSRMLS_DC)
+static int generate_free_switch_expr(zend_switch_entry *switch_entry TSRMLS_DC) /* {{{ */
{
zend_op *opline;
opline->extended_value = 0;
return 0;
}
+/* }}} */
-static int generate_free_foreach_copy(zend_op *foreach_copy TSRMLS_DC)
+static int generate_free_foreach_copy(zend_op *foreach_copy TSRMLS_DC) /* {{{ */
{
zend_op *opline;
return 0;
}
+/* }}} */
-void zend_do_return(znode *expr, int do_end_vparse TSRMLS_DC)
+void zend_do_return(znode *expr, int do_end_vparse TSRMLS_DC) /* {{{ */
{
zend_op *opline;
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-static int zend_add_try_element(zend_uint try_op TSRMLS_DC)
+static int zend_add_try_element(zend_uint try_op TSRMLS_DC) /* {{{ */
{
int try_catch_offset = CG(active_op_array)->last_try_catch++;
CG(active_op_array)->try_catch_array[try_catch_offset].try_op = try_op;
return try_catch_offset;
}
+/* }}} */
-static void zend_add_catch_element(int offset, zend_uint catch_op TSRMLS_DC)
+static void zend_add_catch_element(int offset, zend_uint catch_op TSRMLS_DC) /* {{{ */
{
CG(active_op_array)->try_catch_array[offset].catch_op = catch_op;
}
+/* }}} */
-
-void zend_do_first_catch(znode *open_parentheses TSRMLS_DC)
+void zend_do_first_catch(znode *open_parentheses TSRMLS_DC) /* {{{ */
{
open_parentheses->u.opline_num = get_next_op_number(CG(active_op_array));
}
+/* }}} */
-
-void zend_initialize_try_catch_element(znode *try_token TSRMLS_DC)
+void zend_initialize_try_catch_element(znode *try_token TSRMLS_DC) /* {{{ */
{
int jmp_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
zend_add_catch_element(try_token->u.opline_num, get_next_op_number(CG(active_op_array)) TSRMLS_CC);
}
+/* }}} */
-
-void zend_do_mark_last_catch(znode *first_catch, znode *last_additional_catch TSRMLS_DC)
+void zend_do_mark_last_catch(znode *first_catch, znode *last_additional_catch TSRMLS_DC) /* {{{ */
{
CG(active_op_array)->last--;
zend_do_if_end(TSRMLS_C);
}
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_try(znode *try_token TSRMLS_DC)
+void zend_do_try(znode *try_token TSRMLS_DC) /* {{{ */
{
try_token->u.opline_num = zend_add_try_element(get_next_op_number(CG(active_op_array)) TSRMLS_CC);
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_begin_catch(znode *try_token, znode *catch_class, znode *catch_var, zend_bool first_catch TSRMLS_DC)
+void zend_do_begin_catch(znode *try_token, znode *catch_class, znode *catch_var, zend_bool first_catch TSRMLS_DC) /* {{{ */
{
long catch_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline;
try_token->u.opline_num = catch_op_number;
}
+/* }}} */
-void zend_do_end_catch(znode *try_token TSRMLS_DC)
+void zend_do_end_catch(znode *try_token TSRMLS_DC) /* {{{ */
{
int jmp_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
CG(active_op_array)->opcodes[try_token->u.opline_num].extended_value = get_next_op_number(CG(active_op_array));
}
+/* }}} */
-void zend_do_throw(znode *expr TSRMLS_DC)
+void zend_do_throw(znode *expr TSRMLS_DC) /* {{{ */
{
zend_op *opline;
opline->op1 = *expr;
SET_UNUSED(opline->op2);
}
+/* }}} */
-ZEND_API void function_add_ref(zend_function *function TSRMLS_DC)
+ZEND_API void function_add_ref(zend_function *function TSRMLS_DC) /* {{{ */
{
if (function->type == ZEND_USER_FUNCTION) {
zend_op_array *op_array = &function->op_array;
}
}
}
+/* }}} */
-static void do_inherit_parent_constructor(zend_class_entry *ce TSRMLS_DC)
+static void do_inherit_parent_constructor(zend_class_entry *ce TSRMLS_DC) /* {{{ */
{
if (!ce->parent) {
return;
}
}
}
+/* }}} */
-
-char *zend_visibility_string(zend_uint fn_flags)
+char *zend_visibility_string(zend_uint fn_flags) /* {{{ */
{
if (fn_flags & ZEND_ACC_PRIVATE) {
return "private";
}
return "";
}
+/* }}} */
-
-static void do_inherit_method(zend_function *function)
+static void do_inherit_method(zend_function *function) /* {{{ */
{
/* The class entry of the derived function intentionally remains the same
* as that of the parent class. That allows us to know in which context
TSRMLS_FETCH();
function_add_ref(function TSRMLS_CC);
}
+/* }}} */
-
-static zend_bool zend_do_perform_implementation_check(zend_function *fe, zend_function *proto TSRMLS_DC)
+static zend_bool zend_do_perform_implementation_check(zend_function *fe, zend_function *proto TSRMLS_DC) /* {{{ */
{
zend_uint i;
}
return 1;
}
+/* }}} */
-
-static zend_bool do_inherit_method_check(HashTable *child_function_table, zend_function *parent, zend_hash_key *hash_key, zend_class_entry *child_ce)
+static zend_bool do_inherit_method_check(HashTable *child_function_table, zend_function *parent, zend_hash_key *hash_key, zend_class_entry *child_ce) /* {{{ */
{
zend_uint child_flags;
zend_uint parent_flags = parent->common.fn_flags;
return 0;
}
+/* }}} */
-
-static zend_bool do_inherit_property_access_check(HashTable *target_ht, zend_property_info *parent_info, zend_hash_key *hash_key, zend_class_entry *ce)
+static zend_bool do_inherit_property_access_check(HashTable *target_ht, zend_property_info *parent_info, zend_hash_key *hash_key, zend_class_entry *ce) /* {{{ */
{
zend_property_info *child_info;
zend_class_entry *parent_ce = ce->parent;
return 1; /* Copy from parent */
}
}
+/* }}} */
-
-
-static inline void do_implement_interface(zend_class_entry *ce, zend_class_entry *iface TSRMLS_DC)
+static inline void do_implement_interface(zend_class_entry *ce, zend_class_entry *iface TSRMLS_DC) /* {{{ */
{
if (!(ce->ce_flags & ZEND_ACC_INTERFACE) && iface->interface_gets_implemented && iface->interface_gets_implemented(iface, ce TSRMLS_CC) == FAILURE) {
zend_error(E_CORE_ERROR, "Class %v could not implement interface %v", ce->name, iface->name);
zend_error(E_ERROR, "Interface %v cannot not implement itself", ce->name);
}
}
+/* }}} */
-
-ZEND_API void zend_do_inherit_interfaces(zend_class_entry *ce, zend_class_entry *iface TSRMLS_DC)
+ZEND_API void zend_do_inherit_interfaces(zend_class_entry *ce, zend_class_entry *iface TSRMLS_DC) /* {{{ */
{
/* expects interface to be contained in ce's interface list already */
zend_uint i, ce_num, if_num = iface->num_interfaces;
do_implement_interface(ce, ce->interfaces[ce_num++] TSRMLS_CC);
}
}
+/* }}} */
-
-static int inherit_static_prop(zval **p, int num_args, va_list args, zend_hash_key *key)
+static int inherit_static_prop(zval **p, int num_args, va_list args, zend_hash_key *key) /* {{{ */
{
HashTable *target = va_arg(args, HashTable*);
}
return ZEND_HASH_APPLY_KEEP;
}
+/* }}} */
-
-ZEND_API void zend_do_inheritance(zend_class_entry *ce, zend_class_entry *parent_ce TSRMLS_DC)
+ZEND_API void zend_do_inheritance(zend_class_entry *ce, zend_class_entry *parent_ce TSRMLS_DC) /* {{{ */
{
if ((ce->ce_flags & ZEND_ACC_INTERFACE)
&& !(parent_ce->ce_flags & ZEND_ACC_INTERFACE)) {
zend_verify_abstract_class(ce TSRMLS_CC);
}
}
+/* }}} */
-
-static zend_bool do_inherit_constant_check(HashTable *child_constants_table, zval **parent_constant, zend_hash_key *hash_key, zend_class_entry *iface)
+static zend_bool do_inherit_constant_check(HashTable *child_constants_table, zval **parent_constant, zend_hash_key *hash_key, zend_class_entry *iface) /* {{{ */
{
zval **old_constant;
}
return 1;
}
+/* }}} */
-
-ZEND_API void zend_do_implement_interface(zend_class_entry *ce, zend_class_entry *iface TSRMLS_DC)
+ZEND_API void zend_do_implement_interface(zend_class_entry *ce, zend_class_entry *iface TSRMLS_DC) /* {{{ */
{
zend_uint i, ignore = 0;
zend_uint current_iface_num = ce->num_interfaces;
zend_do_inherit_interfaces(ce, iface TSRMLS_CC);
}
}
+/* }}} */
-
-ZEND_API int do_bind_function(zend_op *opline, HashTable *function_table, zend_bool compile_time)
+ZEND_API int do_bind_function(zend_op *opline, HashTable *function_table, zend_bool compile_time) /* {{{ */
{
zend_function *function;
return SUCCESS;
}
}
+/* }}} */
-
-ZEND_API zend_class_entry *do_bind_class(zend_op *opline, HashTable *class_table, zend_bool compile_time TSRMLS_DC)
+ZEND_API zend_class_entry *do_bind_class(zend_op *opline, HashTable *class_table, zend_bool compile_time TSRMLS_DC) /* {{{ */
{
zend_class_entry *ce, **pce;
return ce;
}
}
+/* }}} */
-
-ZEND_API zend_class_entry *do_bind_inherited_class(zend_op *opline, HashTable *class_table, zend_class_entry *parent_ce, zend_bool compile_time TSRMLS_DC)
+ZEND_API zend_class_entry *do_bind_inherited_class(zend_op *opline, HashTable *class_table, zend_class_entry *parent_ce, zend_bool compile_time TSRMLS_DC) /* {{{ */
{
zend_class_entry *ce, **pce;
int found_ce;
}
return ce;
}
+/* }}} */
-
-void zend_do_early_binding(TSRMLS_D)
+void zend_do_early_binding(TSRMLS_D) /* {{{ */
{
zend_op *opline = &CG(active_op_array)->opcodes[CG(active_op_array)->last-1];
HashTable *table;
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_boolean_or_begin(znode *expr1, znode *op_token TSRMLS_DC)
+void zend_do_boolean_or_begin(znode *expr1, znode *op_token TSRMLS_DC) /* {{{ */
{
int next_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
*expr1 = opline->result;
}
+/* }}} */
-
-void zend_do_boolean_or_end(znode *result, znode *expr1, znode *expr2, znode *op_token TSRMLS_DC)
+void zend_do_boolean_or_end(znode *result, znode *expr1, znode *expr2, znode *op_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
CG(active_op_array)->opcodes[op_token->u.opline_num].op2.u.opline_num = get_next_op_number(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_boolean_and_begin(znode *expr1, znode *op_token TSRMLS_DC)
+void zend_do_boolean_and_begin(znode *expr1, znode *op_token TSRMLS_DC) /* {{{ */
{
int next_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
*expr1 = opline->result;
}
+/* }}} */
-
-void zend_do_boolean_and_end(znode *result, znode *expr1, znode *expr2, znode *op_token TSRMLS_DC)
+void zend_do_boolean_and_end(znode *result, znode *expr1, znode *expr2, znode *op_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
CG(active_op_array)->opcodes[op_token->u.opline_num].op2.u.opline_num = get_next_op_number(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_do_while_begin(TSRMLS_D)
+void zend_do_do_while_begin(TSRMLS_D) /* {{{ */
{
do_begin_loop(TSRMLS_C);
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_do_while_end(znode *do_token, znode *expr_open_bracket, znode *expr TSRMLS_DC)
+void zend_do_do_while_end(znode *do_token, znode *expr_open_bracket, znode *expr TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_brk_cont(zend_uchar op, znode *expr TSRMLS_DC)
+void zend_do_brk_cont(zend_uchar op, znode *expr TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->op2.op_type = IS_CONST;
}
}
+/* }}} */
-
-void zend_do_switch_cond(znode *cond TSRMLS_DC)
+void zend_do_switch_cond(znode *cond TSRMLS_DC) /* {{{ */
{
zend_switch_entry switch_entry;
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-
-void zend_do_switch_end(znode *case_list TSRMLS_DC)
+void zend_do_switch_end(znode *case_list TSRMLS_DC) /* {{{ */
{
zend_op *opline;
zend_switch_entry *switch_entry_ptr;
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_case_before_statement(znode *case_list, znode *case_token, znode *case_expr TSRMLS_DC)
+void zend_do_case_before_statement(znode *case_list, znode *case_token, znode *case_expr TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
int next_op_number;
next_op_number = get_next_op_number(CG(active_op_array));
CG(active_op_array)->opcodes[case_list->u.opline_num].op1.u.opline_num = next_op_number;
}
+/* }}} */
-
-void zend_do_case_after_statement(znode *result, znode *case_token TSRMLS_DC)
+void zend_do_case_after_statement(znode *result, znode *case_token TSRMLS_DC) /* {{{ */
{
int next_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
break;
}
}
+/* }}} */
-
-
-void zend_do_default_before_statement(znode *case_list, znode *default_token TSRMLS_DC)
+void zend_do_default_before_statement(znode *case_list, znode *default_token TSRMLS_DC) /* {{{ */
{
int next_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
}
CG(active_op_array)->opcodes[case_list->u.opline_num].op1.u.opline_num = next_op_number;
}
+/* }}} */
-
-void zend_do_begin_class_declaration(znode *class_token, znode *class_name, znode *parent_class_name TSRMLS_DC)
+void zend_do_begin_class_declaration(znode *class_token, znode *class_name, znode *parent_class_name TSRMLS_DC) /* {{{ */
{
zend_op *opline;
int doing_inheritance = 0;
CG(doc_comment_len) = 0;
}
}
+/* }}} */
-
-static void do_verify_abstract_class(TSRMLS_D)
+static void do_verify_abstract_class(TSRMLS_D) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->op1 = CG(implementing_class);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_end_class_declaration(znode *class_token, znode *parent_token TSRMLS_DC)
+void zend_do_end_class_declaration(znode *class_token, znode *parent_token TSRMLS_DC) /* {{{ */
{
zend_class_entry *ce = CG(active_class_entry);
}
CG(active_class_entry) = NULL;
}
+/* }}} */
-
-void zend_do_implements_interface(znode *interface_znode TSRMLS_DC)
+void zend_do_implements_interface(znode *interface_znode TSRMLS_DC) /* {{{ */
{
zend_op *opline;
opline->op2 = *interface_znode;
opline->extended_value = CG(active_class_entry)->num_interfaces++;
}
+/* }}} */
-
-ZEND_API void zend_mangle_property_name(char **dest, int *dest_length, char *src1, int src1_length, char *src2, int src2_length, int internal)
+ZEND_API void zend_mangle_property_name(char **dest, int *dest_length, char *src1, int src1_length, char *src2, int src2_length, int internal) /* {{{ */
{
char *prop_name;
int prop_name_length;
*dest = prop_name;
*dest_length = prop_name_length;
}
+/* }}} */
-ZEND_API void zend_u_mangle_property_name(zstr *dest, int *dest_length, zend_uchar type, zstr src1, int src1_length, zstr src2, int src2_length, int internal)
+ZEND_API void zend_u_mangle_property_name(zstr *dest, int *dest_length, zend_uchar type, zstr src1, int src1_length, zstr src2, int src2_length, int internal) /* {{{ */
{
if (type == IS_UNICODE) {
UChar *prop_name;
zend_mangle_property_name(&dest->s, dest_length, src1.s, src1_length, src2.s, src2_length, internal);
}
}
+/* }}} */
-static int zend_strnlen(const char* s, int maxlen)
+static int zend_strnlen(const char* s, int maxlen) /* {{{ */
{
int len = 0;
while (*s++ && maxlen--) len++;
return len;
}
+/* }}} */
-static int zend_u_strnlen(const UChar* s, int maxlen)
+static int zend_u_strnlen(const UChar* s, int maxlen) /* {{{ */
{
int len = 0;
while (*s++ && maxlen--) len++;
return len;
}
+/* }}} */
-ZEND_API int zend_unmangle_property_name(char *mangled_property, int len, char **class_name, char **prop_name)
+ZEND_API int zend_unmangle_property_name(char *mangled_property, int len, char **class_name, char **prop_name) /* {{{ */
{
int class_name_len;
*prop_name = (*class_name)+class_name_len;
return SUCCESS;
}
+/* }}} */
-ZEND_API int zend_u_unmangle_property_name(zend_uchar type, zstr mangled_property, int len, zstr *class_name, zstr *prop_name)
+ZEND_API int zend_u_unmangle_property_name(zend_uchar type, zstr mangled_property, int len, zstr *class_name, zstr *prop_name) /* {{{ */
{
if (type == IS_UNICODE) {
int class_name_len;
return zend_unmangle_property_name(mangled_property.s, len, &class_name->s, &prop_name->s);
}
}
+/* }}} */
-void zend_do_declare_property(znode *var_name, znode *value, zend_uint access_type TSRMLS_DC)
+void zend_do_declare_property(znode *var_name, znode *value, zend_uint access_type TSRMLS_DC) /* {{{ */
{
zval *property;
zend_property_info *existing_property_info;
zend_u_declare_property_ex(CG(active_class_entry), Z_TYPE(var_name->u.constant), Z_UNIVAL(var_name->u.constant), Z_UNILEN(var_name->u.constant), property, access_type, comment, comment_len TSRMLS_CC);
efree(Z_STRVAL(var_name->u.constant));
}
+/* }}} */
-
-void zend_do_declare_class_constant(znode *var_name, znode *value TSRMLS_DC)
+void zend_do_declare_class_constant(znode *var_name, znode *value TSRMLS_DC) /* {{{ */
{
zval *property;
}
FREE_PNODE(var_name);
}
+/* }}} */
-
-
-void zend_do_fetch_property(znode *result, znode *object, znode *property TSRMLS_DC)
+void zend_do_fetch_property(znode *result, znode *object, znode *property TSRMLS_DC) /* {{{ */
{
zend_op opline;
zend_llist *fetch_list_ptr;
zend_llist_add_element(fetch_list_ptr, &opline);
}
+/* }}} */
-void zend_do_halt_compiler_register(TSRMLS_D)
+void zend_do_halt_compiler_register(TSRMLS_D) /* {{{ */
{
char *name, *cfilename;
int len, clen;
zend_register_long_constant(name, len+1, zend_get_scanned_file_offset(TSRMLS_C), CONST_CS, 0 TSRMLS_CC);
pefree(name, 0);
}
+/* }}} */
-
-void zend_do_declare_implicit_property(TSRMLS_D)
+void zend_do_declare_implicit_property(TSRMLS_D) /* {{{ */
{
/* Fixes bug #26182. Not sure why we needed to do this in the first place.
Has to be checked with Zeev.
}
#endif
}
+/* }}} */
-
-void zend_do_push_object(znode *object TSRMLS_DC)
+void zend_do_push_object(znode *object TSRMLS_DC) /* {{{ */
{
zend_stack_push(&CG(object_stack), object, sizeof(znode));
}
+/* }}} */
-
-void zend_do_pop_object(znode *object TSRMLS_DC)
+void zend_do_pop_object(znode *object TSRMLS_DC) /* {{{ */
{
if (object) {
znode *tmp;
}
zend_stack_del_top(&CG(object_stack));
}
+/* }}} */
-
-void zend_do_begin_new_object(znode *new_token, znode *class_type TSRMLS_DC)
+void zend_do_begin_new_object(znode *new_token, znode *class_type TSRMLS_DC) /* {{{ */
{
zend_op *opline;
unsigned char *ptr = NULL;
zend_stack_push(&CG(function_call_stack), (void *) &ptr, sizeof(unsigned char *));
}
+/* }}} */
-
-void zend_do_end_new_object(znode *result, znode *new_token, znode *argument_list TSRMLS_DC)
+void zend_do_end_new_object(znode *result, znode *new_token, znode *argument_list TSRMLS_DC) /* {{{ */
{
znode ctor_result;
CG(active_op_array)->opcodes[new_token->u.opline_num].op2.u.opline_num = get_next_op_number(CG(active_op_array));
*result = CG(active_op_array)->opcodes[new_token->u.opline_num].result;
}
+/* }}} */
-static int zend_constant_ct_subst(znode *result, zval *const_name TSRMLS_DC)
+static int zend_constant_ct_subst(znode *result, zval *const_name TSRMLS_DC) /* {{{ */
{
zend_constant *c = NULL;
}
return 0;
}
+/* }}} */
-
-void zend_do_fetch_constant(znode *result, znode *constant_container, znode *constant_name, int mode TSRMLS_DC)
+void zend_do_fetch_constant(znode *result, znode *constant_container, znode *constant_name, int mode TSRMLS_DC) /* {{{ */
{
switch (mode) {
case ZEND_CT:
break;
}
}
+/* }}} */
-
-void zend_do_shell_exec(znode *result, znode *cmd TSRMLS_DC)
+void zend_do_shell_exec(znode *result, znode *cmd TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op2);
*result = opline->result;
}
+/* }}} */
-
-
-void zend_do_init_array(znode *result, znode *expr, znode *offset, zend_bool is_ref TSRMLS_DC)
+void zend_do_init_array(znode *result, znode *expr, znode *offset, zend_bool is_ref TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
}
opline->extended_value = is_ref;
}
+/* }}} */
-
-void zend_do_add_array_element(znode *result, znode *expr, znode *offset, zend_bool is_ref TSRMLS_DC)
+void zend_do_add_array_element(znode *result, znode *expr, znode *offset, zend_bool is_ref TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
}
opline->extended_value = is_ref;
}
+/* }}} */
-
-
-void zend_do_add_static_array_element(znode *result, znode *offset, znode *expr)
+void zend_do_add_static_array_element(znode *result, znode *offset, znode *expr) /* {{{ */
{
zval *element;
TSRMLS_FETCH();
zend_hash_next_index_insert(Z_ARRVAL(result->u.constant), &element, sizeof(zval *), NULL);
}
}
+/* }}} */
-
-void zend_do_add_list_element(znode *element TSRMLS_DC)
+void zend_do_add_list_element(znode *element TSRMLS_DC) /* {{{ */
{
list_llist_element lle;
}
(*((int *)CG(dimension_llist).tail->data))++;
}
+/* }}} */
-
-void zend_do_new_list_begin(TSRMLS_D)
+void zend_do_new_list_begin(TSRMLS_D) /* {{{ */
{
int current_dimension = 0;
zend_llist_add_element(&CG(dimension_llist), ¤t_dimension);
}
+/* }}} */
-
-void zend_do_new_list_end(TSRMLS_D)
+void zend_do_new_list_end(TSRMLS_D) /* {{{ */
{
zend_llist_remove_tail(&CG(dimension_llist));
(*((int *)CG(dimension_llist).tail->data))++;
}
+/* }}} */
-
-void zend_do_list_init(TSRMLS_D)
+void zend_do_list_init(TSRMLS_D) /* {{{ */
{
zend_stack_push(&CG(list_stack), &CG(list_llist), sizeof(zend_llist));
zend_stack_push(&CG(list_stack), &CG(dimension_llist), sizeof(zend_llist));
zend_llist_init(&CG(dimension_llist), sizeof(int), NULL, 0);
zend_do_new_list_begin(TSRMLS_C);
}
+/* }}} */
-
-void zend_do_list_end(znode *result, znode *expr TSRMLS_DC)
+void zend_do_list_end(znode *result, znode *expr TSRMLS_DC) /* {{{ */
{
zend_llist_element *le;
zend_llist_element *dimension;
zend_stack_del_top(&CG(list_stack));
}
}
+/* }}} */
-void zend_do_fetch_static_variable(znode *varname, znode *static_assignment, int fetch_type TSRMLS_DC)
+void zend_do_fetch_static_variable(znode *varname, znode *static_assignment, int fetch_type TSRMLS_DC) /* {{{ */
{
zval *tmp;
zend_op *opline;
/* zval_dtor(&varname->u.constant); */
}
+/* }}} */
-void zend_do_fetch_global_variable(znode *varname, znode *static_assignment, int fetch_type TSRMLS_DC)
+void zend_do_fetch_global_variable(znode *varname, znode *static_assignment, int fetch_type TSRMLS_DC) /* {{{ */
{
zend_op *opline;
znode lval;
zend_do_assign_ref(NULL, &lval, &result TSRMLS_CC);
CG(active_op_array)->opcodes[CG(active_op_array)->last-1].result.u.EA.type |= EXT_TYPE_UNUSED;
}
+/* }}} */
-
-void zend_do_cast(znode *result, znode *expr, int type TSRMLS_DC)
+void zend_do_cast(znode *result, znode *expr, int type TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->extended_value = type;
*result = opline->result;
}
+/* }}} */
-
-void zend_do_include_or_eval(int type, znode *result, znode *op1 TSRMLS_DC)
+void zend_do_include_or_eval(int type, znode *result, znode *op1 TSRMLS_DC) /* {{{ */
{
zend_do_extended_fcall_begin(TSRMLS_C);
{
}
zend_do_extended_fcall_end(TSRMLS_C);
}
+/* }}} */
-
-void zend_do_indirect_references(znode *result, znode *num_references, znode *variable TSRMLS_DC)
+void zend_do_indirect_references(znode *result, znode *num_references, znode *variable TSRMLS_DC) /* {{{ */
{
int i;
zend_do_begin_variable_parse(TSRMLS_C);
fetch_simple_variable(result, variable, 1 TSRMLS_CC);
}
+/* }}} */
-
-void zend_do_unset(znode *variable TSRMLS_DC)
+void zend_do_unset(znode *variable TSRMLS_DC) /* {{{ */
{
zend_op *last_op;
}
}
}
+/* }}} */
-
-void zend_do_isset_or_isempty(int type, znode *result, znode *variable TSRMLS_DC)
+void zend_do_isset_or_isempty(int type, znode *result, znode *variable TSRMLS_DC) /* {{{ */
{
zend_op *last_op;
*result = last_op->result;
}
+/* }}} */
-
-void zend_do_instanceof(znode *result, znode *expr, znode *class_znode, int type TSRMLS_DC)
+void zend_do_instanceof(znode *result, znode *expr, znode *class_znode, int type TSRMLS_DC) /* {{{ */
{
int last_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline;
*result = opline->result;
}
+/* }}} */
-
-void zend_do_foreach_begin(znode *foreach_token, znode *open_brackets_token, znode *array, znode *as_token, int variable TSRMLS_DC)
+void zend_do_foreach_begin(znode *foreach_token, znode *open_brackets_token, znode *array, znode *as_token, int variable TSRMLS_DC) /* {{{ */
{
zend_op *opline;
zend_bool is_variable;
SET_UNUSED(opline->op2);
SET_UNUSED(opline->result);
}
+/* }}} */
-
-void zend_do_foreach_cont(znode *foreach_token, znode *open_brackets_token, znode *as_token, znode *value, znode *key TSRMLS_DC)
+void zend_do_foreach_cont(znode *foreach_token, znode *open_brackets_token, znode *as_token, znode *value, znode *key TSRMLS_DC) /* {{{ */
{
zend_op *opline;
znode dummy, value_node;
do_begin_loop(TSRMLS_C);
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_foreach_end(znode *foreach_token, znode *as_token TSRMLS_DC)
+void zend_do_foreach_end(znode *foreach_token, znode *as_token TSRMLS_DC) /* {{{ */
{
zend_op *container_ptr;
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_declare_begin(TSRMLS_D)
+void zend_do_declare_begin(TSRMLS_D) /* {{{ */
{
zend_stack_push(&CG(declare_stack), &CG(declarables), sizeof(zend_declarables));
}
+/* }}} */
-
-void zend_do_declare_stmt(znode *var, znode *val TSRMLS_DC)
+void zend_do_declare_stmt(znode *var, znode *val TSRMLS_DC) /* {{{ */
{
if (ZEND_U_EQUAL(Z_TYPE(var->u.constant), Z_UNIVAL(var->u.constant), Z_UNILEN(var->u.constant), "ticks", sizeof("ticks")-1)) {
convert_to_long(&val->u.constant);
}
zval_dtor(&var->u.constant);
}
+/* }}} */
-
-void zend_do_declare_end(znode *declare_token TSRMLS_DC)
+void zend_do_declare_end(znode *declare_token TSRMLS_DC) /* {{{ */
{
zend_declarables *declarables;
CG(declarables) = *declarables;
}
}
+/* }}} */
-
-void zend_do_exit(znode *result, znode *message TSRMLS_DC)
+void zend_do_exit(znode *result, znode *message TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
Z_TYPE(result->u.constant) = IS_BOOL;
Z_LVAL(result->u.constant) = 1;
}
+/* }}} */
-void zend_do_begin_silence(znode *strudel_token TSRMLS_DC)
+void zend_do_begin_silence(znode *strudel_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op2);
*strudel_token = opline->result;
}
+/* }}} */
-
-void zend_do_end_silence(znode *strudel_token TSRMLS_DC)
+void zend_do_end_silence(znode *strudel_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->op1 = *strudel_token;
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_jmp_set(znode *value, znode *jmp_token, znode *colon_token TSRMLS_DC)
+void zend_do_jmp_set(znode *value, znode *jmp_token, znode *colon_token TSRMLS_DC) /* {{{ */
{
int op_number = get_next_op_number(CG(active_op_array));
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_jmp_set_else(znode *result, znode *false_value, znode *jmp_token, znode *colon_token TSRMLS_DC)
+void zend_do_jmp_set_else(znode *result, znode *false_value, znode *jmp_token, znode *colon_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_begin_qm_op(znode *cond, znode *qm_token TSRMLS_DC)
+void zend_do_begin_qm_op(znode *cond, znode *qm_token TSRMLS_DC) /* {{{ */
{
int jmpz_op_number = get_next_op_number(CG(active_op_array));
zend_op *opline;
INC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_qm_true(znode *true_value, znode *qm_token, znode *colon_token TSRMLS_DC)
+void zend_do_qm_true(znode *true_value, znode *qm_token, znode *colon_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_qm_false(znode *result, znode *false_value, znode *qm_token, znode *colon_token TSRMLS_DC)
+void zend_do_qm_false(znode *result, znode *false_value, znode *qm_token, znode *colon_token TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
DEC_BPC(CG(active_op_array));
}
+/* }}} */
-
-void zend_do_extended_info(TSRMLS_D)
+void zend_do_extended_info(TSRMLS_D) /* {{{ */
{
zend_op *opline;
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_extended_fcall_begin(TSRMLS_D)
+void zend_do_extended_fcall_begin(TSRMLS_D) /* {{{ */
{
zend_op *opline;
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_extended_fcall_end(TSRMLS_D)
+void zend_do_extended_fcall_end(TSRMLS_D) /* {{{ */
{
zend_op *opline;
SET_UNUSED(opline->op1);
SET_UNUSED(opline->op2);
}
+/* }}} */
-
-void zend_do_ticks(TSRMLS_D)
+void zend_do_ticks(TSRMLS_D) /* {{{ */
{
if (Z_LVAL(CG(declarables).ticks)) {
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
SET_UNUSED(opline->op2);
}
}
+/* }}} */
-void zend_auto_global_dtor(zend_auto_global *auto_global)
+void zend_auto_global_dtor(zend_auto_global *auto_global) /* {{{ */
{
free(auto_global->name);
}
+/* }}} */
-
-zend_bool zend_u_is_auto_global_ex(zend_uchar type, zstr name, uint name_len, zend_bool runtime, zend_auto_global **ret TSRMLS_DC)
+zend_bool zend_u_is_auto_global_ex(zend_uchar type, zstr name, uint name_len, zend_bool runtime, zend_auto_global **ret TSRMLS_DC) /* {{{ */
{
zend_auto_global *auto_global;
}
return 0;
}
+/* }}} */
-zend_bool zend_u_is_auto_global(zend_uchar type, zstr name, uint name_len TSRMLS_DC)
+zend_bool zend_u_is_auto_global(zend_uchar type, zstr name, uint name_len TSRMLS_DC) /* {{{ */
{
return zend_u_is_auto_global_ex(type, name, name_len, 0, NULL TSRMLS_CC);
}
+/* }}} */
-zend_bool zend_is_auto_global(char *name, uint name_len TSRMLS_DC)
+zend_bool zend_is_auto_global(char *name, uint name_len TSRMLS_DC) /* {{{ */
{
return zend_u_is_auto_global_ex(IS_STRING, ZSTR(name), name_len, 0, NULL TSRMLS_CC);
}
+/* }}} */
-
-int zend_register_auto_global_ex(char *name, uint name_len, zend_auto_global_callback auto_global_callback, zend_bool runtime TSRMLS_DC)
+int zend_register_auto_global_ex(char *name, uint name_len, zend_auto_global_callback auto_global_callback, zend_bool runtime TSRMLS_DC) /* {{{ */
{
zend_auto_global auto_global;
return zend_hash_add(CG(auto_globals), name, name_len+1, &auto_global, sizeof(zend_auto_global), NULL);
}
+/* }}} */
-int zend_register_auto_global(char *name, uint name_len, zend_auto_global_callback auto_global_callback TSRMLS_DC)
+int zend_register_auto_global(char *name, uint name_len, zend_auto_global_callback auto_global_callback TSRMLS_DC) /* {{{ */
{
return zend_register_auto_global_ex(name, name_len, auto_global_callback, 0 TSRMLS_CC);
}
+/* }}} */
-int zendlex(znode *zendlval TSRMLS_DC)
+int zendlex(znode *zendlval TSRMLS_DC) /* {{{ */
{
int retval;
zendlval->op_type = IS_CONST;
return retval;
}
+/* }}} */
-
-ZEND_API void zend_initialize_class_data(zend_class_entry *ce, zend_bool nullify_handlers TSRMLS_DC)
+ZEND_API void zend_initialize_class_data(zend_class_entry *ce, zend_bool nullify_handlers TSRMLS_DC) /* {{{ */
{
zend_bool persistent_hashes = (ce->type == ZEND_INTERNAL_CLASS) ? 1 : 0;
dtor_func_t zval_ptr_dtor_func = ((persistent_hashes) ? ZVAL_INTERNAL_PTR_DTOR : ZVAL_PTR_DTOR);
ce->builtin_functions = NULL;
}
}
+/* }}} */
-
-int zend_get_class_fetch_type(zend_uchar type, zstr class_name, uint class_name_len)
+int zend_get_class_fetch_type(zend_uchar type, zstr class_name, uint class_name_len) /* {{{ */
{
if ((class_name_len == sizeof("self")-1) &&
ZEND_U_EQUAL(type, class_name, class_name_len, "self", sizeof("self")-1)) {
return ZEND_FETCH_CLASS_DEFAULT;
}
}
+/* }}} */
-ZEND_API zstr zend_get_compiled_variable_name(zend_op_array *op_array, zend_uint var, int* name_len)
+ZEND_API zstr zend_get_compiled_variable_name(zend_op_array *op_array, zend_uint var, int* name_len) /* {{{ */
{
if (name_len) {
*name_len = op_array->vars[var].name_len;
}
return op_array->vars[var].name;
}
+/* }}} */
-void zend_do_normalization(znode *result, znode *str TSRMLS_DC)
+void zend_do_normalization(znode *result, znode *str TSRMLS_DC) /* {{{ */
{
zend_op *opline;
SET_UNUSED(opline->op2);
*result = opline->result;
}
+/* }}} */
-void zend_do_label(znode *label TSRMLS_DC)
+void zend_do_label(znode *label TSRMLS_DC) /* {{{ */
{
zend_op_array *oparray = CG(active_op_array);
zend_label dest;
/* Done with label now */
zval_dtor(&label->u.constant);
}
+/* }}} */
-void zend_resolve_goto_label(zend_op_array *op_array, zend_op *opline, int pass2 TSRMLS_DC)
+void zend_resolve_goto_label(zend_op_array *op_array, zend_op *opline, int pass2 TSRMLS_DC) /* {{{ */
{
zend_label *dest;
long current, distance;
DEC_BPC(op_array);
}
}
+/* }}} */
-void zend_do_goto(znode *label TSRMLS_DC)
+void zend_do_goto(znode *label TSRMLS_DC) /* {{{ */
{
zend_op *opline = get_next_op(CG(active_op_array) TSRMLS_CC);
opline->op2 = *label;
zend_resolve_goto_label(CG(active_op_array), opline, 0 TSRMLS_CC);
}
+/* }}} */
-void zend_release_labels(TSRMLS_D)
+void zend_release_labels(TSRMLS_D) /* {{{ */
{
if (CG(labels)) {
zend_hash_destroy(CG(labels));
CG(labels) = NULL;
}
}
+/* }}} */
/*
* Local variables: