diff --git a/src/context.c b/src/context.c
index a0f432c..7e498ee 100644
--- a/src/context.c
+++ b/src/context.c
@@ -488,7 +488,7 @@
     const struct lys_module *mod;
     struct lysp_include *inc;
     uint32_t v;
-    LY_ARRAY_SIZE_TYPE u;
+    LY_ARRAY_COUNT_TYPE u;
 
     assert(submodule);
 
@@ -529,7 +529,7 @@
             mod->latest_revision = 1;
         }
         if (mod->parsed && mod->parsed->includes) {
-            for (LY_ARRAY_SIZE_TYPE u = 0; u < LY_ARRAY_SIZE(mod->parsed->includes); ++u) {
+            for (LY_ARRAY_COUNT_TYPE u = 0; u < LY_ARRAY_COUNT(mod->parsed->includes); ++u) {
                 if (mod->parsed->includes[u].submodule->latest_revision == 2) {
                     mod->parsed->includes[u].submodule->latest_revision = 1;
                 }
@@ -541,7 +541,7 @@
 static LY_ERR
 ylib_feature(struct lyd_node *parent, const struct lys_module *cur_mod)
 {
-    LY_ARRAY_SIZE_TYPE i;
+    LY_ARRAY_COUNT_TYPE i;
     struct lyd_node *node;
 
     if (!cur_mod->implemented) {
@@ -564,7 +564,7 @@
 static LY_ERR
 ylib_deviation(struct lyd_node *parent, const struct lys_module *cur_mod, int bis)
 {
-    LY_ARRAY_SIZE_TYPE i;
+    LY_ARRAY_COUNT_TYPE i;
     struct lyd_node *node;
     struct lys_module *mod;
 
@@ -591,7 +591,7 @@
 static LY_ERR
 ylib_submodules(struct lyd_node *parent, const struct lys_module *cur_mod, int bis)
 {
-    LY_ARRAY_SIZE_TYPE i;
+    LY_ARRAY_COUNT_TYPE i;
     struct lyd_node *node, *cont;
     struct lysp_submodule *submod;
     int ret;
