I discussed with @sigurdteigen as well, and felt the function was better implemented in a separate commit because it should be available not just in set.c/h but also in map.c/h and that complicated things too much.  Would it be OK to commit as is, and then submit the refactoring commit separately, also targeting *StringSetAddAllMatching*?  Or do you want the data function first?