echo "Done\n";
?>
--EXPECTF--
-Fatal error: Declaration of test3::foo() must be compatible with that of test::foo() in %s on line %d
+Strict Standards: Declaration of test3::foo() should be compatible with that of test::foo() in %s on line %d
+Done
echo "Done\n";
?>
--EXPECTF--
-Fatal error: Declaration of test3::foo() must be compatible with that of test::foo() in %s on line %d
+Strict Standards: Declaration of test3::foo() should be compatible with that of test::foo() in %s on line %d
+Done
echo "Done\n";
?>
--EXPECTF--
-Fatal error: Declaration of test3::foo() must be compatible with that of test::foo() in %s on line %d
+Strict Standards: Declaration of test3::foo() should be compatible with that of test::foo() in %s on line %d
+Done
echo "Done\n";
?>
--EXPECTF--
-Fatal error: Declaration of test3::foo() must be compatible with that of test::foo() in %s on line %d
+Strict Standards: Declaration of test3::foo() should be compatible with that of test::foo() in %s on line %d
+Done
echo "Done\n";
?>
--EXPECTF--
-Fatal error: Declaration of test3::foo() must be compatible with that of test::foo() in %s on line %d
+Strict Standards: Declaration of test3::foo() should be compatible with that of test::foo() in %s on line %d
+Done
echo "Done\n";
?>
--EXPECTF--
-Fatal error: Declaration of test3::foo() must be compatible with that of test::foo() in %s on line %d
+Strict Standards: Declaration of test3::foo() should be compatible with that of test::foo() in %s on line %d
+Done
echo "Done\n";
?>
--EXPECTF--
-Fatal error: Declaration of test3::foo() must be compatible with that of test::foo() in %s on line %d
+Strict Standards: Declaration of test3::foo() should be compatible with that of test::foo() in %s on line %d
+Done
echo "Done\n";
?>
--EXPECTF--
-Fatal error: Declaration of test3::foo() must be compatible with that of test::foo() in %s on line %d
+Strict Standards: Declaration of test3::foo() should be compatible with that of test::foo() in %s on line %d
+Done
child->common.prototype = parent->common.prototype ? parent->common.prototype : parent;
}
- if (child->common.prototype) {
+ if (child->common.prototype && (child->common.prototype->common.fn_flags & ZEND_ACC_ABSTRACT)) {
if (!zend_do_perform_implementation_check(child, child->common.prototype TSRMLS_CC)) {
zend_error(E_COMPILE_ERROR, "Declaration of %v::%v() must be compatible with that of %v::%v()", ZEND_FN_SCOPE_NAME(child), child->common.function_name, ZEND_FN_SCOPE_NAME(child->common.prototype), child->common.prototype->common.function_name);
}