From 6604782cd915c861ae03f3ebd7ffcb9fb552182d Mon Sep 17 00:00:00 2001 From: Aaron Jorbin Date: Sun, 23 Sep 2018 22:49:02 +0000 Subject: [PATCH] General: PHP7.3 throws an `E_WARNING` when using continue to target a switch Applying continue to a switch is equivalent to using break and quite possibly, a continue targeting a higher level control structure is actually intended. To target the higher level control structure, a numeric argument has to be passed to continue. This fixes two cases in WordPress Core where this is currently happening. See: https://github.com/php/php-src/pull/3364 See: https://wiki.php.net/rfc/continue_on_switch_deprecation Props jrf. Fixes #44543. git-svn-id: https://develop.svn.wordpress.org/trunk@43653 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/pomo/plural-forms.php | 2 +- tests/phpunit/includes/utils.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/wp-includes/pomo/plural-forms.php b/src/wp-includes/pomo/plural-forms.php index cabc807180..a66d00f6de 100644 --- a/src/wp-includes/pomo/plural-forms.php +++ b/src/wp-includes/pomo/plural-forms.php @@ -207,7 +207,7 @@ class Plural_Forms { $span = strspn( $str, self::NUM_CHARS, $pos ); $output[] = array( 'value', intval( substr( $str, $pos, $span ) ) ); $pos += $span; - continue; + break; } throw new Exception( sprintf( 'Unknown symbol "%s"', $next ) ); diff --git a/tests/phpunit/includes/utils.php b/tests/phpunit/includes/utils.php index 0a9c44ee7a..db1fac7229 100644 --- a/tests/phpunit/includes/utils.php +++ b/tests/phpunit/includes/utils.php @@ -498,7 +498,7 @@ function benchmark_pcre_backtracking( $pattern, $subject, $strategy ) { case PREG_NO_ERROR: return $i; case PREG_BACKTRACK_LIMIT_ERROR: - continue; + break; case PREG_RECURSION_LIMIT_ERROR: trigger_error( 'PCRE recursion limit encountered before backtrack limit.' ); return;