- /* only exist if it does not match (strvec == NULL) and if it
- * does not have children: an incomplete parse, like those
- * generated by complete() don't match but have children that
- * may match. */
- if (!ec_parse_matches(parse) && TAILQ_EMPTY(&parse->children)) {
+ /* Do not dump if it does not match (strvec == NULL) and if it
+ * does not have children. Note that an incomplete parsing tree,
+ * like those generated by complete(), don't match but have
+ * children that may match, and we want to dump them. */
+ if (!ec_pnode_matches(pnode) && TAILQ_EMPTY(&pnode->children)) {