diff --git a/src/json.c b/src/json.c
index cbe38e9..59ae61c 100644
--- a/src/json.c
+++ b/src/json.c
@@ -963,7 +963,7 @@
 
     if (toplevel) {
         /* we are done */
-        return LY_SUCCESS;
+        goto result;
     }
 
     /* continue with the next token */
diff --git a/src/schema_compile.c b/src/schema_compile.c
index aeeb239..760c052 100644
--- a/src/schema_compile.c
+++ b/src/schema_compile.c
@@ -151,6 +151,13 @@
 {
     LY_ARRAY_COUNT_TYPE u;
 
+    if (instance_p) {
+        *instance_p = NULL;
+    }
+    if (cardinality_p) {
+        *cardinality_p = 0;
+    }
+
     LY_ARRAY_FOR(ext->substmts, u) {
         if (LY_STMT_IS_DATA_NODE(substmt)) {
             if (!LY_STMT_IS_DATA_NODE(ext->substmts[u].stmt)) {
diff --git a/src/schema_compile_node.c b/src/schema_compile_node.c
index 3f61230..e1da522 100644
--- a/src/schema_compile_node.c
+++ b/src/schema_compile_node.c
@@ -2408,7 +2408,8 @@
         struct lysc_node **list;
 
         if (ctx->ext) {
-            lysc_ext_substmt(ctx->ext, LY_STMT_CONTAINER /* matches all data nodes */, (void **)&list, NULL);
+            /* container matches all data nodes */
+            lysc_ext_substmt(ctx->ext, LY_STMT_CONTAINER, (void **)&list, NULL);
         } else if (node->nodetype == LYS_RPC) {
             list = (struct lysc_node **)&ctx->cur_mod->compiled->rpcs;
         } else if (node->nodetype == LYS_NOTIF) {
