Commit afd04afe0fc for php.net

commit afd04afe0fcc2ccf85e1c7ca9b6c82939b038772
Author: Gina Peter Banyard <girgias@php.net>
Date:   Fri Nov 7 02:16:04 2025 +0000

    zend_builtin_functions.c: refactor is_a_impl() to use early returns

diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c
index 91a552372c3..8487b803230 100644
--- a/Zend/zend_builtin_functions.c
+++ b/Zend/zend_builtin_functions.c
@@ -691,7 +691,6 @@ static void is_a_impl(INTERNAL_FUNCTION_PARAMETERS, bool only_subclass) /* {{{ *
 	zend_string *class_name;
 	const zend_class_entry *instance_ce;
 	bool allow_string = only_subclass;
-	bool retval;

 	ZEND_PARSE_PARAMETERS_START(2, 3)
 		Z_PARAM_ZVAL(obj)
@@ -718,21 +717,19 @@ static void is_a_impl(INTERNAL_FUNCTION_PARAMETERS, bool only_subclass) /* {{{ *
 	}

 	if (!only_subclass && EXPECTED(zend_string_equals(instance_ce->name, class_name))) {
-		retval = 1;
-	} else {
-		const zend_class_entry *ce = zend_lookup_class_ex(class_name, NULL, ZEND_FETCH_CLASS_NO_AUTOLOAD);
-		if (!ce) {
-			retval = 0;
-		} else {
-			if (only_subclass && instance_ce == ce) {
-				retval = 0;
-			} else {
-				retval = instanceof_function(instance_ce, ce);
-			}
-		}
+		RETURN_TRUE;
+	}
+
+	const zend_class_entry *ce = zend_lookup_class_ex(class_name, NULL, ZEND_FETCH_CLASS_NO_AUTOLOAD);
+	if (!ce) {
+		RETURN_FALSE;
+	}
+
+	if (only_subclass && instance_ce == ce) {
+		RETURN_FALSE;
 	}

-	RETURN_BOOL(retval);
+	RETURN_BOOL(instanceof_function(instance_ce, ce));
 }
 /* }}} */