Lines Matching refs:expr_ast

3415 static bool zend_is_assign_to_self(zend_ast *var_ast, zend_ast *expr_ast) /* {{{ */  in zend_is_assign_to_self()  argument
3417 if (expr_ast->kind != ZEND_AST_VAR || expr_ast->child[0]->kind != ZEND_AST_ZVAL) { in zend_is_assign_to_self()
3431 zend_string *name2 = zval_get_string(zend_ast_get_zval(expr_ast->child[0])); in zend_is_assign_to_self()
3441 znode *expr_node, zend_ast *expr_ast, zend_ast *var_ast) { in zend_compile_expr_with_potential_assign_to_self() argument
3442 if (zend_is_assign_to_self(var_ast, expr_ast) && !is_this_fetch(expr_ast)) { in zend_compile_expr_with_potential_assign_to_self()
3446 if (zend_try_compile_cv(&cv_node, expr_ast) == FAILURE) { in zend_compile_expr_with_potential_assign_to_self()
3447 zend_compile_simple_var_no_cv(expr_node, expr_ast, BP_VAR_R, 0); in zend_compile_expr_with_potential_assign_to_self()
3452 zend_compile_expr(expr_node, expr_ast); in zend_compile_expr_with_potential_assign_to_self()
3459 zend_ast *expr_ast = ast->child[1]; in zend_compile_assign() local
3476 zend_compile_expr(&expr_node, expr_ast); in zend_compile_assign()
3484 zend_compile_expr(&expr_node, expr_ast); in zend_compile_assign()
3496 zend_compile_expr_with_potential_assign_to_self(&expr_node, expr_ast, var_ast); in zend_compile_assign()
3509 zend_compile_expr(&expr_node, expr_ast); in zend_compile_assign()
3520 if (!zend_is_variable_or_call(expr_ast)) { in zend_compile_assign()
3524 zend_assert_not_short_circuited(expr_ast); in zend_compile_assign()
3527 zend_compile_var(&expr_node, expr_ast, BP_VAR_W, 1); in zend_compile_assign()
3532 if (expr_ast->kind == ZEND_AST_VAR) { in zend_compile_assign()
3536 if (zend_try_compile_cv(&cv_node, expr_ast) == FAILURE) { in zend_compile_assign()
3537 zend_compile_simple_var_no_cv(&expr_node, expr_ast, BP_VAR_R, 0); in zend_compile_assign()
3542 zend_compile_expr(&expr_node, expr_ast); in zend_compile_assign()
3628 zend_ast *expr_ast = ast->child[1]; in zend_compile_compound_assign() local
3643 zend_compile_expr(&expr_node, expr_ast); in zend_compile_compound_assign()
3651 zend_compile_expr(&expr_node, expr_ast); in zend_compile_compound_assign()
3666 zend_compile_expr_with_potential_assign_to_self(&expr_node, expr_ast, var_ast); in zend_compile_compound_assign()
3680 zend_compile_expr(&expr_node, expr_ast); in zend_compile_compound_assign()
5677 zend_ast *expr_ast = ast->child[0]; in zend_compile_return() local
5689 if (!expr_ast) { in zend_compile_return()
5692 } else if (by_ref && zend_is_variable(expr_ast)) { in zend_compile_return()
5693 zend_assert_not_short_circuited(expr_ast); in zend_compile_return()
5694 zend_compile_var(&expr_node, expr_ast, BP_VAR_W, 1); in zend_compile_return()
5696 zend_compile_expr(&expr_node, expr_ast); in zend_compile_return()
5713 expr_ast ? &expr_node : NULL, CG(active_op_array)->arg_info - 1, 0); in zend_compile_return()
5721 if (by_ref && expr_ast) { in zend_compile_return()
5722 if (zend_is_call(expr_ast)) { in zend_compile_return()
5724 } else if (!zend_is_variable(expr_ast) || zend_ast_is_short_circuited(expr_ast)) { in zend_compile_return()
5734 zend_ast *expr_ast = ast->child[0]; in zend_compile_echo() local
5737 zend_compile_expr(&expr_node, expr_ast); in zend_compile_echo()
5746 zend_ast *expr_ast = ast->child[0]; in zend_compile_throw() local
5749 zend_compile_expr(&expr_node, expr_ast); in zend_compile_throw()
5995 zend_ast *expr_ast = list->child[i]; in zend_compile_expr_list() local
5998 zend_compile_expr(result, expr_ast); in zend_compile_expr_list()
6039 zend_ast *expr_ast = ast->child[0]; in zend_compile_foreach() local
6044 bool is_variable = zend_is_variable(expr_ast) && zend_can_write_to_variable(expr_ast); in zend_compile_foreach()
6068 zend_compile_var(&expr_node, expr_ast, BP_VAR_W, 1); in zend_compile_foreach()
6070 zend_compile_expr(&expr_node, expr_ast); in zend_compile_foreach()
6074 zend_separate_if_call_and_write(&expr_node, expr_ast, BP_VAR_W); in zend_compile_foreach()
6239 zend_ast *expr_ast = ast->child[0]; in zend_compile_switch() local
6251 zend_compile_expr(&expr_node, expr_ast); in zend_compile_switch()
6417 zend_ast *expr_ast = ast->child[0]; in zend_compile_match() local
6423 zend_compile_expr(&expr_node, expr_ast); in zend_compile_match()
10031 zend_ast *expr_ast = ast->child[0]; in zend_compile_unary_op() local
10035 zend_compile_expr(&expr_node, expr_ast); in zend_compile_unary_op()
10050 zend_ast *expr_ast = ast->child[0]; in zend_compile_unary_pm() local
10055 zend_compile_expr(&expr_node, expr_ast); in zend_compile_unary_pm()
10183 zend_ast *expr_ast = ast->child[0]; in zend_compile_cast() local
10187 zend_compile_expr(&expr_node, expr_ast); in zend_compile_cast()
10287 zend_ast *expr_ast = ast->child[0]; in zend_compile_coalesce() local
10294 zend_compile_var(&expr_node, expr_ast, BP_VAR_IS, 0); in zend_compile_coalesce()
10423 zend_ast *expr_ast = ast->child[0]; in zend_compile_print() local
10426 zend_compile_expr(&expr_node, expr_ast); in zend_compile_print()
10473 zend_ast *expr_ast = ast->child[0]; in zend_compile_yield_from() local
10483 zend_compile_expr(&expr_node, expr_ast); in zend_compile_yield_from()
10522 zend_ast *expr_ast = ast->child[0]; in zend_compile_include_or_eval() local
10527 zend_compile_expr(&expr_node, expr_ast); in zend_compile_include_or_eval()
10618 zend_ast *expr_ast = ast->child[0]; in zend_compile_silence() local
10623 if (expr_ast->kind == ZEND_AST_VAR) { in zend_compile_silence()
10626 zend_compile_simple_var_no_cv(result, expr_ast, BP_VAR_R, 0 ); in zend_compile_silence()
10628 zend_compile_expr(result, expr_ast); in zend_compile_silence()
10637 zend_ast *expr_ast = ast->child[0]; in zend_compile_shell_exec() local
10644 args_ast = zend_ast_create_list(1, ZEND_AST_ARG_LIST, expr_ast); in zend_compile_shell_exec()