var_dump($test instanceof Baz);
?>
--EXPECTF--
-Fatal error: Access level to Bar::bad() must be public (as in class Baz) in %sbug69467.php on line %d
+Fatal error: Access level to Foo::bad() must be public (as in class Baz) in %sbug69467.php on line %d
CG(active_class_entry) = ce;
- if (implements_ast) {
- zend_compile_implements(&declare_node, implements_ast);
- }
-
zend_compile_stmt(stmt_ast);
/* Reset lineno for final opcodes and errors */
zend_emit_op(NULL, ZEND_BIND_TRAITS, &declare_node, NULL);
}
+ if (implements_ast) {
+ zend_compile_implements(&declare_node, implements_ast);
+ }
+
if (!(ce->ce_flags & (ZEND_ACC_INTERFACE|ZEND_ACC_EXPLICIT_ABSTRACT_CLASS))
- && (extends_ast || ce->num_interfaces > 0)
+ && (extends_ast || implements_ast)
) {
zend_verify_abstract_class(ce);
- if (ce->num_interfaces && !(ce->ce_flags & ZEND_ACC_IMPLEMENT_TRAITS)) {
+ if (implements_ast) {
zend_emit_op(NULL, ZEND_VERIFY_ABSTRACT_CLASS, &declare_node, NULL);
}
}