Annotation of embedaddon/php/Zend/tests/bug48770.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Bug #48770 (call_user_func_array() fails to call parent from inheriting class)
3: --XFAIL--
4: See Bug #48770
5: --FILE--
6: <?php
7:
8: class A {
9: public function func($str) {
10: var_dump(__METHOD__ .': '. $str);
11: }
12: private function func2($str) {
13: var_dump(__METHOD__ .': '. $str);
14: }
15: protected function func3($str) {
16: var_dump(__METHOD__ .': '. $str);
17: }
18: private function func22($str) {
19: var_dump(__METHOD__ .': '. $str);
20: }
21: }
22:
23: class B extends A {
24: public function func($str) {
25: static $avoid_crash = 0;
26:
27: if ($avoid_crash++ == 1) {
28: print "This method shouldn't be called when using parent::func!\n";
29: return;
30: }
31:
32: call_user_func_array(array($this, 'parent::func'), array($str));
33: }
34: private function func2($str) {
35: var_dump(__METHOD__ .': '. $str);
36: }
37: protected function func3($str) {
38: var_dump(__METHOD__ .': '. $str);
39: }
40: }
41:
42: class C extends B {
43: public function func($str) {
44: parent::func($str);
45: }
46: }
47:
48: $c = new C;
49: $c->func('This should work!');
50:
51: ?>
52: --EXPECTF--
53: %unicode|string%(26) "A::func: This should work!"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>