summaryrefslogtreecommitdiff
path: root/Zend/zend_execute.c
diff options
context:
space:
mode:
authorAndi Gutmans <andi@php.net>2002-03-06 17:08:26 +0000
committerAndi Gutmans <andi@php.net>2002-03-06 17:08:26 +0000
commit83f102fd9ff797a6391002af7f595e53649f2a5e (patch)
tree9dd82fe8472ef9ea1098b8d9369087dbe41b6c2f /Zend/zend_execute.c
parent86ca867930ffded725ba27dfc8370d95e2c484b6 (diff)
downloadphp-git-83f102fd9ff797a6391002af7f595e53649f2a5e.tar.gz
- Add function * and class * functionality. Only constants are left.
<?php class MyOuterClass { class MyInnerClass { function func1() { print "func1()\n"; } function func2() { print "func2()\n"; } } } import class * from MyOuterClass; import function func2 from MyOuterClass::MyInnerClass; MyInnerClass::func1(); func2();
Diffstat (limited to 'Zend/zend_execute.c')
-rw-r--r--Zend/zend_execute.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index b9d91e06c3..c9c6a6b272 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -1424,7 +1424,9 @@ binary_assign_op_addr: {
}
function_add_ref(function);
} else {
- //zend_hash_apply(&ce->function_table, (apply_func_t) zend_import_function, (void *) 1 TSRMLS_CC);
+ zend_function tmp_zend_function;
+
+ zend_hash_copy(EG(function_table), &ce->function_table, (copy_ctor_func_t) function_add_ref, &tmp_zend_function, sizeof(zend_function));
}
NEXT_OPCODE();
}
@@ -1450,7 +1452,9 @@ binary_assign_op_addr: {
}
zend_class_add_ref(import_ce);
} else {
- //zend_hash_apply(&ce->function_table, (apply_func_t) zend_import_function, (void *) 1 TSRMLS_CC);
+ zend_class_entry tmp_zend_class_entry;
+
+ zend_hash_copy(EG(class_table), &ce->class_table, (copy_ctor_func_t) zend_class_add_ref, &tmp_zend_class_entry, sizeof(zend_class_entry));
}
NEXT_OPCODE();