diff --git a/library/ssl_srv.c b/library/ssl_srv.c
index 4ebd834..e743eff 100644
--- a/library/ssl_srv.c
+++ b/library/ssl_srv.c
@@ -1251,7 +1251,7 @@
                 p[1] != ( ( ciphersuite_id >> 8 ) & 0xFF ) ||
                 p[2] != ( ( ciphersuite_id      ) & 0xFF ) )
             {
-                goto next_suite;
+                continue;
             }
 
             got_common_suite = 1;
@@ -1264,11 +1264,6 @@
                 goto have_ciphersuite_v2;
             }
 
-        next_suite:
-            /* Need something here to avoid
-             * 'label at end of compound statement' error. */
-            ((void) 0);
-
 #if defined(MBEDTLS_SSL_SRV_RESPECT_CLIENT_PREFERENCE)
         }
         MBEDTLS_SSL_END_FOR_EACH_CIPHERSUITE
@@ -2174,7 +2169,7 @@
             if( p[0] != ( ( ciphersuite_id >> 8 ) & 0xFF ) ||
                 p[1] != ( ( ciphersuite_id      ) & 0xFF ) )
             {
-                goto next_suite;
+                continue;
             }
 
             got_common_suite = 1;
@@ -2187,12 +2182,6 @@
 #endif /* MBEDTLS_SSL_CONF_SINGLE_CIPHERSUITE */
                 goto have_ciphersuite;
             }
-
-        next_suite:
-            /* Need something here to avoid
-             * 'label at end of compound statement' error. */
-            ((void) 0);
-
 #if defined(MBEDTLS_SSL_SRV_RESPECT_CLIENT_PREFERENCE)
         }
         MBEDTLS_SSL_END_FOR_EACH_CIPHERSUITE
