Index: /trunk/composer.json
===================================================================
--- /trunk/composer.json	(revision 63509)
+++ /trunk/composer.json	(revision 63510)
@@ -52,5 +52,5 @@
 		"wp-coding-standards/wpcs": "~3.4.1",
 		"phpcompatibility/phpcompatibility-wp": "~2.1.3",
-		"phpstan/phpstan": "2.2.5",
+		"phpstan/phpstan": "2.2.13",
 		"phpstan/phpstan-phpunit": "2.0.18",
 		"yoast/phpunit-polyfills": "^1.1.0"
Index: /trunk/src/wp-includes/formatting.php
===================================================================
--- /trunk/src/wp-includes/formatting.php	(revision 63509)
+++ /trunk/src/wp-includes/formatting.php	(revision 63510)
@@ -4849,8 +4849,4 @@
 		$regex,
 		static function ( $matches ) {
-			if ( ! isset( $matches[0] ) ) {
-				return '';
-			}
-
 			if ( isset( $matches['non_cdata'] ) ) {
 				// escape HTML entities in the non-CDATA Section.
Index: /trunk/src/wp-includes/functions.php
===================================================================
--- /trunk/src/wp-includes/functions.php	(revision 63509)
+++ /trunk/src/wp-includes/functions.php	(revision 63510)
@@ -4361,13 +4361,13 @@
  * @access private
  *
- * @param string|WP_Error $message Error message or WP_Error object.
- * @param string          $title   Optional. Error title. Default empty string.
- * @param string|array    $args    Optional. Arguments to control behavior. Default empty array.
+ * @param string|WP_Error|int $message Error message, WP_Error object, or integer response.
+ * @param string              $title   Optional. Error title. Default empty string.
+ * @param string|array        $args    Optional. Arguments to control behavior. Default empty array.
  * @return array {
  *     Processed arguments.
  *
- *     @type string $0 Error message.
- *     @type string $1 Error title.
- *     @type array  $2 Arguments to control behavior.
+ *     @type string|int $0 Error message, or integer response.
+ *     @type string     $1 Error title.
+ *     @type array      $2 Arguments to control behavior.
  * }
  */
Index: /trunk/tests/phpstan/baselines/argument.type.neon
===================================================================
--- /trunk/tests/phpstan/baselines/argument.type.neon	(revision 63509)
+++ /trunk/tests/phpstan/baselines/argument.type.neon	(revision 63510)
@@ -775,4 +775,9 @@
 			path: ../../../src/wp-includes/class-wp-embed.php
 		-
+			message: '#^Parameter \#1 \$handle of function curl_getinfo expects resource, \(resource\|false\) given\.$#'
+			identifier: argument.type
+			count: 2
+			path: ../../../src/wp-includes/class-wp-http-curl.php
+		-
 			message: '#^Parameter \#3 \$value of function curl_setopt expects int, string given\.$#'
 			identifier: argument.type
@@ -929,4 +934,9 @@
 			count: 1
 			path: ../../../src/wp-includes/formatting.php
+		-
+			message: '#^Parameter \#1 \$finfo of function finfo_file expects resource, resource\|false given\.$#'
+			identifier: argument.type
+			count: 2
+			path: ../../../src/wp-includes/functions.php
 		-
 			message: '#^Parameter \#1 \$prefix of function uniqid expects string, int\<0, max\> given\.$#'
Index: /trunk/tests/phpstan/baselines/empty.variable.neon
===================================================================
--- /trunk/tests/phpstan/baselines/empty.variable.neon	(revision 63509)
+++ /trunk/tests/phpstan/baselines/empty.variable.neon	(revision 63510)
@@ -24,9 +24,4 @@
 			count: 1
 			path: ../../../src/wp-admin/includes/class-wp-posts-list-table.php
-		-
-			message: '#^Variable \$title in empty\(\) always exists and is always falsy\.$#'
-			identifier: empty.variable
-			count: 1
-			path: ../../../src/wp-admin/includes/plugin.php
 		-
 			message: '#^Variable \$parent_file in empty\(\) always exists and is not falsy\.$#'
Index: /trunk/tests/phpstan/baselines/function.alreadyNarrowedType.neon
===================================================================
--- /trunk/tests/phpstan/baselines/function.alreadyNarrowedType.neon	(revision 63509)
+++ /trunk/tests/phpstan/baselines/function.alreadyNarrowedType.neon	(revision 63510)
@@ -25,9 +25,4 @@
 			path: ../../../src/wp-admin/includes/ajax-actions.php
 		-
-			message: '#^Call to function is_wp_error\(\) with WP_Error will always evaluate to true\.$#'
-			identifier: function.alreadyNarrowedType
-			count: 1
-			path: ../../../src/wp-admin/includes/ajax-actions.php
-		-
 			message: '#^Call to function method_exists\(\) with ''ParagonIE_Sodium…'' and ''runtime_speed_test'' will always evaluate to true\.$#'
 			identifier: function.alreadyNarrowedType
@@ -49,9 +44,4 @@
 			count: 1
 			path: ../../../src/wp-admin/includes/plugin.php
-		-
-			message: '#^Call to function is_string\(\) with string will always evaluate to true\.$#'
-			identifier: function.alreadyNarrowedType
-			count: 1
-			path: ../../../src/wp-includes/block-editor.php
 		-
 			message: '#^Call to function is_string\(\) with string will always evaluate to true\.$#'
@@ -80,4 +70,9 @@
 			path: ../../../src/wp-includes/functions.php
 		-
+			message: '#^Call to function is_scalar\(\) with int\|string will always evaluate to true\.$#'
+			identifier: function.alreadyNarrowedType
+			count: 3
+			path: ../../../src/wp-includes/functions.php
+		-
 			message: '#^Call to function is_array\(\) with array will always evaluate to true\.$#'
 			identifier: function.alreadyNarrowedType
Index: /trunk/tests/phpstan/baselines/if.alwaysFalse.neon
===================================================================
--- /trunk/tests/phpstan/baselines/if.alwaysFalse.neon	(revision 63509)
+++ /trunk/tests/phpstan/baselines/if.alwaysFalse.neon	(revision 63510)
@@ -33,9 +33,4 @@
 			identifier: if.alwaysFalse
 			count: 1
-			path: ../../../src/wp-includes/load.php
-		-
-			message: '#^If condition is always false\.$#'
-			identifier: if.alwaysFalse
-			count: 1
 			path: ../../../src/wp-includes/rest-api/endpoints/class-wp-rest-comments-controller.php
 		-
Index: /trunk/tests/phpstan/baselines/property.notFound.neon
===================================================================
--- /trunk/tests/phpstan/baselines/property.notFound.neon	(revision 63509)
+++ /trunk/tests/phpstan/baselines/property.notFound.neon	(revision 63510)
@@ -177,5 +177,5 @@
 			message: '#^Access to an undefined property WP_Theme\:\:\$version\.$#'
 			identifier: property.notFound
-			count: 5
+			count: 6
 			path: ../../../src/wp-admin/includes/class-wp-debug-data.php
 		-
