diff options
Diffstat (limited to 'tests/classes/private_005b.phpt')
-rw-r--r-- | tests/classes/private_005b.phpt | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/classes/private_005b.phpt b/tests/classes/private_005b.phpt new file mode 100644 index 0000000..ea3fe61 --- /dev/null +++ b/tests/classes/private_005b.phpt @@ -0,0 +1,35 @@ +--TEST-- +ZE2 A private method cannot be called in a derived class +--SKIPIF-- +<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?> +--FILE-- +<?php + +class pass { + private function show() { + echo "Call show()\n"; + } + + public function do_show() { + $this->show(); + } +} + +class fail extends pass { + function do_show() { + $this->show(); + } +} + +$t = new pass(); +$t->do_show(); + +$t2 = new fail(); +$t2->do_show(); + +echo "Done\n"; // shouldn't be displayed +?> +--EXPECTF-- +Call show() + +Fatal error: Call to private method pass::show() from context 'fail' in %s on line %d
\ No newline at end of file |