Annotation of embedaddon/php/tests/classes/private_003b.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: ZE2 A private method cannot be called in a derived class
! 3: --SKIPIF--
! 4: <?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?>
! 5: --FILE--
! 6: <?php
! 7:
! 8: class pass {
! 9: private function show() {
! 10: echo "Call show()\n";
! 11: }
! 12:
! 13: protected function good() {
! 14: $this->show();
! 15: }
! 16: }
! 17:
! 18: class fail extends pass {
! 19: public function ok() {
! 20: $this->good();
! 21: }
! 22:
! 23: public function not_ok() {
! 24: $this->show();
! 25: }
! 26: }
! 27:
! 28: $t = new fail();
! 29: $t->ok();
! 30: $t->not_ok(); // calling a private function
! 31:
! 32: echo "Done\n"; // shouldn't be displayed
! 33: ?>
! 34: --EXPECTF--
! 35: Call show()
! 36:
! 37: Fatal error: Call to private method pass::show() from context 'fail' in %s on line %d
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>