diff --git a/lib/regex_internal.c b/lib/regex_internal.c index 904b88e..61c8d9d 100644 --- a/lib/regex_internal.c +++ b/lib/regex_internal.c @@ -18,6 +18,8 @@ with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ +#include "verify.h" +#include "intprops.h" static void re_string_construct_common (const char *str, Idx len, re_string_t *pstr, RE_TRANSLATE_TYPE trans, bool icase, @@ -1390,7 +1392,10 @@ static void internal_function re_node_set_remove_at (re_node_set *set, Idx idx) { - if (idx < 0 || idx >= set->nelem) + verify (! TYPE_SIGNED (Idx)); + /* if (idx < 0) + return; */ + if (idx >= set->nelem) return; --set->nelem; for (; idx < set->nelem; idx++)