extensions CHANGE use the validate callback of extension plugin

The validate callback was not used so far. It is now used for validating
data nodes by extension instances placed in the nodes themselves or in
their types (compiled types, so not matter where the extension came
from, the node's type itself or a used typedef's type).
diff --git a/src/schema_compile_node.c b/src/schema_compile_node.c
index 65e0d2b..bf2f209 100644
--- a/src/schema_compile_node.c
+++ b/src/schema_compile_node.c
@@ -1960,6 +1960,9 @@
         }
 
         (*type)->basetype = basetype;
+        /* collect extensions */
+        COMPILE_EXTS_GOTO(ctx, tctx->tpdf->type.exts, (*type)->exts, (*type), ret, cleanup);
+        /* get plugin for the type */
         (*type)->plugin = lys_compile_type_get_plugin(tctx->tpdf->type.pmod->mod, tctx->tpdf->name, basetype);
         prev_type = *type;
         ret = lys_compile_type_(ctx, tctx->node, tctx->tpdf->flags, tctx->tpdf->name,