Index: /trunk/src/wp-admin/includes/class-automatic-upgrader-skin.php
===================================================================
--- /trunk/src/wp-admin/includes/class-automatic-upgrader-skin.php	(revision 46124)
+++ /trunk/src/wp-admin/includes/class-automatic-upgrader-skin.php	(revision 46125)
@@ -59,6 +59,7 @@
 	/**
 	 * @param string|array|WP_Error $data
+	 * @param mixed                 ...$args Optional text replacements.
 	 */
-	public function feedback( $data ) {
+	public function feedback( $data, ...$args ) {
 		if ( is_wp_error( $data ) ) {
 			$string = $data->get_error_message();
@@ -73,6 +74,4 @@
 
 		if ( strpos( $string, '%' ) !== false ) {
-			$args = func_get_args();
-			$args = array_splice( $args, 1 );
 			if ( ! empty( $args ) ) {
 				$string = vsprintf( $string, $args );
Index: /trunk/src/wp-admin/includes/class-bulk-upgrader-skin.php
===================================================================
--- /trunk/src/wp-admin/includes/class-bulk-upgrader-skin.php	(revision 46124)
+++ /trunk/src/wp-admin/includes/class-bulk-upgrader-skin.php	(revision 46125)
@@ -51,6 +51,7 @@
 	/**
 	 * @param string $string
+	 * @param mixed  ...$args Optional text replacements.
 	 */
-	public function feedback( $string ) {
+	public function feedback( $string, ...$args ) {
 		if ( isset( $this->upgrader->strings[ $string ] ) ) {
 			$string = $this->upgrader->strings[ $string ];
@@ -58,6 +59,4 @@
 
 		if ( strpos( $string, '%' ) !== false ) {
-			$args = func_get_args();
-			$args = array_splice( $args, 1 );
 			if ( $args ) {
 				$args   = array_map( 'strip_tags', $args );
Index: /trunk/src/wp-admin/includes/class-wp-ajax-upgrader-skin.php
===================================================================
--- /trunk/src/wp-admin/includes/class-wp-ajax-upgrader-skin.php	(revision 46124)
+++ /trunk/src/wp-admin/includes/class-wp-ajax-upgrader-skin.php	(revision 46125)
@@ -79,7 +79,8 @@
 	 * @since 4.6.0
 	 *
-	 * @param string|WP_Error $errors Errors.
+	 * @param string|WP_Error $errors  Errors.
+	 * @param mixed           ...$args Optional text replacements.
 	 */
-	public function error( $errors ) {
+	public function error( $errors, ...$args ) {
 		if ( is_string( $errors ) ) {
 			$string = $errors;
@@ -89,6 +90,4 @@
 
 			if ( false !== strpos( $string, '%' ) ) {
-				$args = func_get_args();
-				$args = array_splice( $args, 1 );
 				if ( ! empty( $args ) ) {
 					$string = vsprintf( $string, $args );
@@ -105,6 +104,5 @@
 		}
 
-		$args = func_get_args();
-		call_user_func_array( array( $this, 'parent::error' ), $args );
+		parent::error( $errors, ...$args );
 	}
 
@@ -114,7 +112,8 @@
 	 * @since 4.6.0
 	 *
-	 * @param string|array|WP_Error $data Log entry data.
+	 * @param string|array|WP_Error $data    Log entry data.
+	 * @param mixed                 ...$args Optional text replacements.
 	 */
-	public function feedback( $data ) {
+	public function feedback( $data, ...$args ) {
 		if ( is_wp_error( $data ) ) {
 			foreach ( $data->get_error_codes() as $error_code ) {
@@ -123,6 +122,5 @@
 		}
 
-		$args = func_get_args();
-		call_user_func_array( array( $this, 'parent::feedback' ), $args );
+		parent::feedback( $data, ...$args );
 	}
 }
Index: /trunk/src/wp-admin/includes/class-wp-upgrader-skin.php
===================================================================
--- /trunk/src/wp-admin/includes/class-wp-upgrader-skin.php	(revision 46124)
+++ /trunk/src/wp-admin/includes/class-wp-upgrader-skin.php	(revision 46125)
@@ -141,6 +141,7 @@
 	/**
 	 * @param string $string
-	 */
-	public function feedback( $string ) {
+	 * @param mixed  ...$args Optional text replacements.
+	 */
+	public function feedback( $string, ...$args ) {
 		if ( isset( $this->upgrader->strings[ $string ] ) ) {
 			$string = $this->upgrader->strings[ $string ];
@@ -148,6 +149,4 @@
 
 		if ( strpos( $string, '%' ) !== false ) {
-			$args = func_get_args();
-			$args = array_splice( $args, 1 );
 			if ( $args ) {
 				$args   = array_map( 'strip_tags', $args );
