fix the use of uninitialized value in regcomp
the num_submatches field of some ast nodes was not initialized in
tre_add_tag_{left,right}, but was accessed later.
this was a benign bug since the uninitialized values were never used
(these values are created during tre_add_tags and copied around during
tre_expand_ast where they are also used in computations, but nothing
in the final tnfa depends on them).
diff --git a/src/regex/regcomp.c b/src/regex/regcomp.c
index 5fad98b..65f2fd0 100644
--- a/src/regex/regcomp.c
+++ b/src/regex/regcomp.c
@@ -1106,6 +1106,7 @@
c->right->firstpos = NULL;
c->right->lastpos = NULL;
c->right->num_tags = 0;
+ c->right->num_submatches = 0;
node->obj = c;
node->type = CATENATION;
return REG_OK;
@@ -1136,6 +1137,7 @@
c->left->firstpos = NULL;
c->left->lastpos = NULL;
c->left->num_tags = 0;
+ c->left->num_submatches = 0;
node->obj = c;
node->type = CATENATION;
return REG_OK;