diff options
| -rw-r--r-- | tests/classes/static_mix_1.phpt | 26 | ||||
| -rw-r--r-- | tests/classes/static_mix_2.phpt | 27 |
2 files changed, 53 insertions, 0 deletions
diff --git a/tests/classes/static_mix_1.phpt b/tests/classes/static_mix_1.phpt new file mode 100644 index 0000000000..47950b3165 --- /dev/null +++ b/tests/classes/static_mix_1.phpt @@ -0,0 +1,26 @@ +--TEST-- +You cannot overload astatic methods with a non static methods +--SKIPIF-- +<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?> +--FILE-- +<?php + +class pass { + static function show() { + echo "Call to function pass::show()\n"; + } +} + +class fail extends pass { + function show() { + echo "Call to function fail::show()\n"; + } +} + +pass::show(); +fail::show(); + +echo "Done\n"; // shouldn't be displayed of cause +?> +--EXPECTF-- +Fatal error: Cannot make static method pass::show() non static in class fail in %s on line %d
\ No newline at end of file diff --git a/tests/classes/static_mix_2.phpt b/tests/classes/static_mix_2.phpt new file mode 100644 index 0000000000..949b9a1b8d --- /dev/null +++ b/tests/classes/static_mix_2.phpt @@ -0,0 +1,27 @@ +--TEST-- +You cannot overload a non static methods with a static methods +--SKIPIF-- +<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?> +--FILE-- +<?php + +class pass { + function show() { + echo "Call to function pass::show()\n"; + } +} + +class fail extends pass { + static function show() { + echo "Call to function fail::show()\n"; + } +} + +$t = new pass(); +$t->show(); +fail::show(); + +echo "Done\n"; // shouldn't be displayed of cause +?> +--EXPECTF-- +Fatal error: Cannot make non static method pass::show() static in class fail in %s on line %d
\ No newline at end of file |
