tree data BUGFIX multi-validation syntax error

... is always a fatal error.
diff --git a/src/tree_data.c b/src/tree_data.c
index ecfea86..182ffb2 100644
--- a/src/tree_data.c
+++ b/src/tree_data.c
@@ -137,7 +137,13 @@
         r = LY_EINVAL;
         break;
     }
-    LY_DPARSER_ERR_GOTO(r, rc = r, lydctx, cleanup);
+    if (r) {
+        rc = r;
+        if ((r != LY_EVALID) || !lydctx || !(lydctx->val_opts & LYD_VALIDATE_MULTI_ERROR) ||
+                (ly_vecode(ctx) == LYVE_SYNTAX)) {
+            goto cleanup;
+        }
+    }
 
     if (parent) {
         /* get first top-level sibling */