diff --git a/src/lib-sieve/plugins/variables/ext-variables-modifiers.c b/src/lib-sieve/plugins/variables/ext-variables-modifiers.c
index dd21c8899f406633098cf4835c558a9c27fb44b8..93225fdf2e5be1a6028290fcf54e8ed6e62de9a1 100644
--- a/src/lib-sieve/plugins/variables/ext-variables-modifiers.c
+++ b/src/lib-sieve/plugins/variables/ext-variables-modifiers.c
@@ -36,7 +36,9 @@ enum ext_variables_modifier_code {
     EXT_VARIABLES_MODIFIER_LOWERFIRST,
     EXT_VARIABLES_MODIFIER_UPPERFIRST,
     EXT_VARIABLES_MODIFIER_QUOTEWILDCARD,
-    EXT_VARIABLES_MODIFIER_LENGTH
+    EXT_VARIABLES_MODIFIER_LENGTH,
+
+    EXT_VARIABLES_MODIFIER_COUNT
 };
 
 const struct sieve_variables_modifier_def *ext_variables_core_modifiers[] = {
@@ -47,6 +49,8 @@ const struct sieve_variables_modifier_def *ext_variables_core_modifiers[] = {
 	&quotewildcard_modifier,
 	&length_modifier
 };
+static_assert_array_size(ext_variables_core_modifiers,
+			 EXT_VARIABLES_MODIFIER_COUNT);
 
 const unsigned int ext_variables_core_modifiers_count =
     N_ELEMENTS(ext_variables_core_modifiers);
diff --git a/src/managesieve-login/managesieve-proxy.c b/src/managesieve-login/managesieve-proxy.c
index 657985aa13e5dc99953da2d49c4903947c034416..386601d91d55e3e0d54e1eb698bf4bddbc7012ed 100644
--- a/src/managesieve-login/managesieve-proxy.c
+++ b/src/managesieve-login/managesieve-proxy.c
@@ -29,9 +29,11 @@ typedef enum {
 	MANAGESIEVE_RESPONSE_BYE
 } managesieve_response_t;
 
-static const char *managesieve_proxy_state_names[MSIEVE_PROXY_STATE_COUNT] = {
+static const char *managesieve_proxy_state_names[] = {
 	"none", "tls-start", "tls-ready", "xclient", "auth"
 };
+static_assert_array_size(managesieve_proxy_state_names,
+			 MSIEVE_PROXY_STATE_COUNT);
 
 static string_t *
 proxy_compose_xclient_forward(struct managesieve_client *client)